வெளியீட்டு அறிக்கை¶
பதிப்பு வரலாறு¶
இந்த அட்டவணை மெட்டா-தொகுப்பு பதிப்புகள் மற்றும் ஒவ்வொரு Qiskit உறுப்பின் பதிப்பு நிறுவப்பட்டது:
Qiskit Metapackage Version |
qiskit-terra |
qiskit-aer |
qiskit-ignis |
qiskit-ibmq-provider |
qiskit-aqua |
|---|
Note
` ` 0.7.0 ` , ` ` 0.7.1 ` `, மற்றும் ` 0.7.2 ` ` மெட்டா தொகுப்பு வெளியீடுகள் :ref:`பதிப்பு உத்தி கொள்கை இன்னும் முறைப்படுத்தப்படவில்லை.
குறிப்பிடத்தக்க மாற்றங்கள்¶
குறிப்பிடத்தக்க மாற்றங்கள்¶
Qiskit 0.25.2¶
டெரா 0.17.1¶
எந்த மாற்றங்களும் இல்லை
ஏர் 0.8.1¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.6.0¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.9.1¶
எந்த மாற்றங்களும் இல்லை
IBM Q Provider 0.12.3¶
பிற குறிப்புகள்¶
The
qiskit.providers.ibmq.experiment.analysis_result.AnalysisResultfitattribute is now optional.
Qiskit 0.25.1¶
டெரா 0.17.1¶
பிழை திருத்தங்கள்¶
__டிரான்ஸ்பிலர் கடந்து செல்லும் ஒரு சிக்கலை சரிசெய்தது:class:'~qiskit.transpiler.passes.Unroller 'அவற்றின் வரையறையில் ஒரு விதியுடன் காணப்படுகிறது அறிவுறுத்தல்கள் வழக்கில் உலகளாவிய கட்டத்தை பாதுகாக்கவில்லை. நிலையான '#6134 <https://github.com/Qiskit/qiskit-terra/issues/6134>'__
ஒரு :attr:'~qiskit.circuit.ControlledGate.parameter' பண்புக்கூறு :class:'~qiskit.circuit.ControlledGate' பொருள் :class:'~qiskit.extensions.UnitaryGate' என்ற ஒற்றை அணியாக அமைக்கப்படவில்லை:class:'~qiskit.extensions.UnitaryGate' பொருள். முன்னதாக, :meth:'~qiskit.extensions.UnitaryGate.control' ஒரு :class:'~qiskit.circuit.ControlledGate' என்ற ''அளவுரு'' பண்புக்கூறு :class:'~qiskit.extensions.UnitaryGate' மேட்ரிக்ஸ். இது தளத்தின் "அளவுரு"வை மாற்றியமைக்க வழிவகுக்கும்:class:'~qiskit.extensions.UnitaryGate' பொருள் மற்றும் அடுத்தடுத்த அழைப்புகள் :meth:'~qiskit.circuit.ControlledGate.inverse' இரட்டை கட்டுப்படுத்தப்பட்ட :class:'~qiskit.extensions.UnitaryGate'. நிலையான '#5750 <https://github.com/Qiskit/qiskit-terra/issues/5750>'__
முன்தொகுப்பு பாஸ் மேலாளர்களுடன் ஒரு சிக்கலை சரிசெய்தது:class:'~qiskit.transpiler.preset_passmanagers.level_0_pass_manager' மற்றும் :class:'~qiskit.transpiler.preset_passmanagers.level_1_pass_manager' (இது ''optimization_level''0 மற்றும் 1 க்கு ஒத்திருக்கிறது :func:'~qiskit.compiler.transpile') அடிப்படைசில சந்தர்ப்பங்களில் அவர்கள் கோரப்பட்ட அடிப்படையில் இல்லாத சுற்றுகளை உருவாக்குவார்கள்.
பயன்படுத்தும் ஒரு பிழையை சரிசெய்யவும் :class:'~qiskit.algorithms.optimizers.SPSA'வை கற்றல் விகிதம் மற்றும் கலக்கத்தின் தானியங்கி அளவுத்திருத்தத்துடன் (அதாவது "learning_rate'' மற்றும் ''கலக்கம்'' ஆகியவை முதலெழுத்துக்களில் ''ஏதுமில்லை'') , அனைத்து எதிர்கால தேர்வுமுறைகளுக்கும் அளவுத்திருத்தத்தை சேமிக்கிறது. மாறாக, ஒவ்வொரு புதிய புறநிலை செயல்பாட்டிற்கும் அளவுத்திருத்தம் செய்யப்பட வேண்டும்.
ஏர் 0.8.1¶
பிழை திருத்தங்கள்¶
பயன்பாட்டில் ஒரு சிக்கல் சரி செய்யப்பட்டது ''matrix_product_state'' முறையைப் பயன்படுத்தி ஒரு சிக்கலை சரிநிர்ணயித்தல்செய்தது :class:'~qiskit.providers.aer.AerSimulator' மற்றும் :class:'~qiskit.providers.aer.QasmSimulator' சிமுலேட்டர்கள் க்ராஸ் பிழைகளுடன் ஒரு இரைச்சலான உருவகப்படுத்தலை இயக்கும் போது. முன்பு, மேட்ரிக்ஸ் தயாரிப்பு நிலை உருவகப்படுத்துதல் முறை க்ராஸ் மேட்ரிக்ஸ் விண்ணப்பித்த பிறகு அண்டை க்யூபிட்களில் மாற்றங்களை ப்ரொபோடோகேட் செய்யாது. இது சரி செய்யப்நிர்ணயித்தல்பட்டுள்ளது எனவே உருவகப்படுத்துதலின் இருந்து வெளியீடு சரியானது. நிலையான '#1184 <https://github.com/Qiskit/qiskit-aer/issues/1184>'__ மற்றும் '#1205 <https://github.com/Qiskit/qiskit-aer/issues/1205>'__
ஒரு சிக்கல் சரி செய்யப்பட்டது :class:'qiskit.extensions.Initialize' அறிவுறுத்தல் ''ஸ்டேட்வெக்டர்'', மற்றும் ''matrix_product_state'' உருவகப்படுத்துதல் முறைகளுக்கான அளவீட்டு மாதிரி தேர்வுமுறையை முடக்கும்:class:'~qiskit.providers.aer.AerSimulator' மற்றும் :class:'~qiskit.providers.aer.QasmSimulator' சிமுலேட்டர்கள், அது முதல் சுற்று அறிவுறுத்தல் அல்லது அனைத்து குபிட்கள் பயன்படுத்தப்படும் போது கூட எனவே தீர்மானகரமான. நிலையான '#1210 <https://github.com/Qiskit/qiskit-aer/issues/1210>'__
ஒரு சிக்கலை :class:'~qiskit.providers.aer.library.SaveStatevector' மற்றும் :class:'~qiskit.providers.aer.extensions.SnapshotStatevector' அறிவுறுத்தல்களுடன் பயன்படுத்தும்போது "extended_stabilizer" உருவகப்படுத்துதல் முறை :class:'~qiskit.providers.aer.AerSimulator' மற்றும் :class:'~qiskit.providers.aer.QasmSimulator' போலி அங்கு அது ஒரு இயல்பாக்கப்படாத மாநில வெக்டர் திரும்ப வேண்டும். நிலையான '#1196 <https://github.com/Qiskit/qiskit-aer/issues/1210>'__
''matrix_product_state'' உருவகப்படுத்துதல் முறை இப்போது முன்பு காணாமல் போன தொகுப்பு மாநில அறிவுறுத்தலுக்கு ஆதரவு உள்ளது, :class:'qiskit.providers.aer.library.SetMatrixProductState', இது ஒரு சர்கூட் ஒரு உருவகப்படுத்துதல் நிலையை அமைக்க உதவுகிறது.
Ignis 0.6.0¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.9.1¶
IBM Q Provider 0.12.2¶
எந்த மாற்றங்களும் இல்லை
Qiskit 0.25.0¶
இந்த வெளியீடு கிஸ்கிட் அக்வா திட்டத்தை அதிகாரப்பூர்வமாக மதிப்பிடுகிறது. அதன்படி, எதிர்கால வெளியீட்டில் qiskit-aqua தொகுப்பு qiskit மெட்டாபேக்கேஜிலிருந்து அகற்றப்படும், அதாவது எதிர்கால வெளியீட்டில் pip install qiskit இனி `` qiskit-aqua`` சேர்க்கப்படாது. Qiskit-அக்வாவால் வழங்கப்பட்ட பயன்பாட்டு தொகுதிகள் பல புதிய தொகுப்புகளாக பிரிக்கப்பட்டுள்ளன: qiskit-optimization, qiskit-nature, qiskit-machine-learning, மற்றும் `` qiskit-finance . இந்த தொகுப்புகளை அவர்களால் நிறுவ முடியும் (நிலையான பிப் நிறுவல் கட்டளை வழியாக, எ.கா. ``pip install qiskit-nature) அல்லது மீதமுள்ள qiskit மெட்டாபேக்கேஜுடன் விருப்ப கூடுதல் (எ.கா. pip install 'qiskit[finance,optimization]' அல்லது pip install 'qiskit[all]' முக்கிய வழிமுறைகள் மற்றும் ஆபரேட்டர் ஓட்டம் இப்போது qiskit-டெராவின் ஒரு பகுதியாக உள்ளன:mod: qiskit.algorithms மற்றும் :mod:` qiskit.opflow`. நீங்கள் தற்போதுள்ள அக்வா பயன்பாட்டைப் பொறுத்து, கிஸ்கிட் டெர்ராவில் உள்ள பயன்பாட்டு தொகுப்புகள் அல்லது புதிய தொகுதிக்கூறுகளைப் பயன்படுத்த வேண்டும். கிஸ்கிட் அக்வாவிலிருந்து எவ்வாறு இடம்பெயர்வது என்பது பற்றிய கூடுதல் விவரங்களுக்கு நீங்கள் பின்வருமாறு குறிப்பிடலாம்:ref: aqua-migration.
Terra 0.17.0¶
முன்னுரை¶
பிழைமுன்னுரைQiskit டெர்ரா 0.17.0 பல புதிய அம்சங்கள் மற்றும் பிழைத்திருத்தங்களை உள்ளடக்கியது. இந்த வெளியீட்டிற்கான முக்கிய புதிய அம்சம் :mod:'qiskit.algorithms' மற்றும் :mod:'qiskit.opflow' தொகுதிகள் அறிமுகப்படுத்தப்பட்டது, அவை இடம்பெயர்ந்து :mod:'qiskit.aqua' திட்டத்திலிருந்து தழுவி எடுக்கப்பட்டன.
புதிய அம்சங்கள்¶
:py:func:'qiskit.pulse.call' செயல்பாடு இப்போது ஒரு :class:'~qiskit.circuit.Parameter' பொருளை அளவுருக்கள் கொண்ட துணைவழக்கத்துடன் எடுக்கலாம். இது ஒவ்வொரு துணைவழக்கமான அழைப்புக்கும் :class:'~qiskit.circuit.Parameter' பொருட்களுக்கு வெவ்வேறு மதிப்புகளை ஒதுக்க உதவுகிறது.
உதாரணமாக
from qiskit.circuit import Parameter from qiskit import pulse amp = Parameter('amp') with pulse.build() as subroutine: pulse.play(pulse.Gaussian(160, amp, 40), DriveChannel(0)) with pulse.build() as main_prog: pulse.call(subroutine, amp=0.1) pulse.call(subroutine, amp=0.3)
qiskit.providers.models.QasmBackendConfigurationஒரு புதிய புலத்தைக் கொண்டுள்ளதுprocessor_type, இது வடிவத்தில் ஒரு பின்முனையின் செயலி பற்றிய தகவலை வழங்க விருப்பத்தேர்வு டன் பயன்படுத்தப்படலாம்:{"குடும்பம்": <str>, "திருத்தம்": <str>, பிரிவு: <str>}. உதாரணமாக:{"குடும்பம்": "கேனரி", "திருத்தம்": "1.0", பிரிவு: "ஏ."}.:py:class:'qiskit.pulse.Schedule', :py:class:'qiskit.pulse.Instruction', மற்றும் :py:class:'qiskit.pulse.Channel'வகுப்புகள் இப்போது ஒரு :attr:'~qiiskit.pulse.Schedule.parameter' சொத்து உள்ளது, இது எந்த :class:'~qiskit.circuit.Parameter' பொருள் மற்றும் ஒரு :meth:'~qiskit.pulse.Schedule.is_parameterized()' முறை, எந்த அளவுருக்கள் பொருளில் பயன்படுத்தப்பட்டால்
உண்மைதிரும்பும்.உதாரணத்திற்கு:
from qiskit.circuit import Parameter from qiskit import pulse shift = Parameter('alpha') schedule = pulse.Schedule() schedule += pulse.SetFrequency(shift, pulse.DriveChannel(0)) assert schedule.is_parameterized() == True print(schedule.parameters)
{Parameter(alpha)}ஒரு உள்ளீடு செயல்பாட்டின் செபிஷேவ் தோராயத்தை ஒரு பிஸ்கேவ் செயல்படுத்துவதற்காக:mod: qiskit.circuit.library க்கு:class:` ~qiskit.circuit.library.PiecewiseChebyshev` ஐச் சேர்த்தது. கொடுக்கப்பட்ட செயல்பாட்டிற்கு:math: f (x) மற்றும் பட்டம்:math: d, இந்த வகுப்பு வர்க்கம் ஒரு பிஸ்கேவ் பல்லுறுப்புறுப்பு செபிஷேவ் தோராயத்தை செயல்படுத்துகிறது:math:` n` வினவல்கள்:math: f (x) இல் கொடுக்கப்பட்ட இடைவெளிகள். தோராயத்தில் உள்ள அனைத்து பல்லுறுப்புக்கோவைகளும் பட்டம்:math: d.
உதாரணத்திற்கு:
import numpy as np from qiskit import QuantumCircuit from qiskit.circuit.library.arithmetic.piecewise_chebyshev import PiecewiseChebyshev f_x, degree, breakpoints, num_state_qubits = lambda x: np.arcsin(1 / x), 2, [2, 4], 2 pw_approximation = PiecewiseChebyshev(f_x, degree, breakpoints, num_state_qubits) pw_approximation._build() qc = QuantumCircuit(pw_approximation.num_qubits) qc.h(list(range(num_state_qubits))) qc.append(pw_approximation.to_instruction(), qc.qubits) qc.draw(output='mpl')
The
BackendPropertiesclass now has areadout_length()method, which returns the readout length [sec] of the given qubit.ஒரு புதிய வகுப்பு ,: py:class: ~ qiskit.pulse.ScheduleBlock, இதில்:class:` qiskit.pulse` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது. இந்த வகுப்பு ஒரு துடிப்பு நிரலின் புதிய பிரதிநிதித்துவத்தை வழங்குகிறது. இந்த பிரதிநிதித்துவம் துடிப்பு பில்டர் தொடரியல் மிகவும் பொருத்தமானது மற்றும் இது தொடர்புடைய அறிவுறுத்தல் வரிசையை அடிப்படையாகக் கொண்டது.
இந்த பிரதிநிதித்துவம் ஒவ்வொரு அறிவுறுத்தலுக்கும் தொடக்க நேரத்தை `` t0`` குறிப்பிடுவதற்கு பதிலாக `` alignment_context`` ஐ எடுக்கும். அறிவுறுத்தலின் தொடக்க நேரம் குறிப்பிட்ட மாற்றம் மற்றும் அறிவுறுத்தல்களின் உறவினர் நிலையுடன் மறைமுகமாக ஒதுக்கப்பட்டுள்ளது.
The
ScheduleBlockallows for lazy instruction scheduling, meaning we can assign arbitrary parameters to the duration of instructions.உதாரணத்திற்கு:
from qiskit.pulse import ScheduleBlock, DriveChannel, Gaussian from qiskit.pulse.instructions import Play, Call from qiskit.pulse.transforms import AlignRight from qiskit.circuit import Parameter dur = Parameter('rabi_duration') block = ScheduleBlock(alignment_context=AlignRight()) block += Play(Gaussian(dur, 0.1, dur/4), DriveChannel(0)) block += Call(measure_sched) # subroutine defined elsewhere
இந்த குறியீடு காஸியன் துடிப்பு காலத்தை ஸ்கேன் செய்யும் ஒரு பரிசோதனையை வரையறுக்கிறது, அதன்பிறகு ஒரு அளவீட்டு
measure_sched, அதாவது ஒரு ரபி சோதனை. இலக்கு கால மதிப்பை ஒதுக்குவதன் மூலம் ஸ்கேன் செய்யப்பட்ட ஒவ்வொரு காலத்திற்கும்blockபொருளை மீண்டும் பயன்படுத்தலாம்.ஒரு புதிய செயல்பாட்டைச் சேர்த்தது:func: ~ qiskit.visualization.array_to_latex :mod:` qiskit.visualization` தொகுதிக்கு லாடெக்ஸுடன் திசையன்கள் மற்றும் மெட்ரிக்குகளை பிரதிநிதித்துவப்படுத்தவும் காட்சிப்படுத்தவும் பயன்படுத்தலாம்.
from qiskit.visualization import array_to_latex from numpy import sqrt, exp, pi mat = [[0, exp(pi*.75j)], [1/sqrt(8), 0.875]] array_to_latex(mat)
\[\begin{split}\begin{bmatrix} 0 & \tfrac{1}{\sqrt{2}}(-1 + i) \\ \tfrac{1}{\sqrt{8}} & \tfrac{7}{8} \\ \end{bmatrix} \end{split}\]The
StatevectorandDensityMatrixclasses now havedraw()methods which allow objects to be drawn as either text matrices, IPython Latex objects, Latex source, Q-spheres, Bloch spheres and Hinton plots. By default the output type is the equivalent output from__repr__but this default can be changed in a user config file by setting thestate_draweroption. For example:from qiskit.quantum_info import DensityMatrix dm = DensityMatrix.from_label('r0') dm.draw('latex')
\[\begin{split}\begin{bmatrix} \tfrac{1}{2} & 0 & -\tfrac{1}{2}i & 0 \\ 0 & 0 & 0 & 0 \\ \tfrac{1}{2}i & 0 & \tfrac{1}{2} & 0 \\ 0 & 0 & 0 & 0 \\ \end{bmatrix} \end{split}\]from qiskit.quantum_info import Statevector sv = Statevector.from_label('+r') sv.draw('qsphere')
கூடுதலாக, இந்த வகுப்புகளின் ஐபிதான் காட்சிக்கு இப்போது:meth: ~ qiskit.quantum_info.DensityMatrix.draw முறை பயன்படுத்தப்படுகிறது, எனவே நீங்கள் ஒரு பயனர் உள்ளமைவு கோப்பில் இயல்புநிலை வெளியீட்டு வகையை மாற்றினால், பின்: a:class:` q qiskit .quantum_info.Statevector` அல்லது a:class: ~ qiskit.quantum_info.DensityMatrix பொருள் ஒரு ஜூபிட்டர் நோட்புக்கில் காட்டப்படும், அது பொருளுக்கு வெளியீட்டு வகை பயன்படுத்தப்படும்.
துடிப்பு:class: qiskit.pulse.Instruction பொருள்கள் மற்றும் அளவுரு துடிப்பு பொருள்கள் (எ.கா:class:` ~ qiskit.pulse.library.Gaussian` இப்போது இதைப் பயன்படுத்துவதை ஆதரிக்கிறது:class: q qiskit.circuit.Parameter மற்றும் :class:~qiskit.circuit.ParameterExpression`
durationஅளவுருவுக்கான பொருள்கள். எடுத்துக்காட்டாக:from qiskit.circuit import Parameter from qiskit.pulse import Gaussian dur = Parameter('x_pulse_duration') double_dur = dur * 2 rx_pulse = Gaussian(dur, 0.1, dur/4) double_rx_pulse = Gaussian(double_dir, 0.1, dur/4)
ஒரு அளவுரு
durationஉடன் ஒரு வழிமுறையை ஒரு அட்டவணையில் சேர்க்கும்போது, ``duration`` ஒரு அட்டவணையில் சேர்ப்பது புதிதாக அறிமுகப்படுத்தப்பட்ட பிரதிநிதித்துவத்தால் மட்டுமே ஆதரிக்கப்படுகிறது:class: ~ qiskit.pulse.ScheduleBlock. மேலும் விவரங்களுக்கு அறியப்பட்ட சிக்கல்கள் வெளியீட்டு குறிப்புகள் பகுதியைப் பார்க்கவும்.தி :meth: ~ qiskit.providers.basicaer.QasmSimulatorPy.run முறை:class:` ~ qiskit.providers.basicaer.QasmSimulatorPy` ,:class: ~ qiskit.providers.basicaer.StatevectorSimulatorPy மற்றும் :class: ~ qiskit.providers.basicaer.UnitarySimulatorPy பின்தளத்தில் இப்போது ஒரு:class:` ~ qiskit.circuit.QuantumCircuit` (அல்லது :class: ~ qiskit.circuit.QuantumCircuit பொருள்கள்) அதன் உள்ளீடாக எடுக்கிறது. முந்தைய:class: ~ qiskit.qobj.QasmQobj பொருள் இப்போதும் ஆதரிக்கப்படுகிறது, ஆனால் எதிர்கால வெளியீட்டில் அது நீக்கப்படும்.
For an example of how to use this see:
from qiskit import transpile, QuantumCircuit from qiskit.providers.basicaer import BasicAer backend = BasicAer.get_backend('qasm_simulator') circuit = QuantumCircuit(2) circuit.h(0) circuit.cx(0, 1) circuit.measure_all() tqc = transpile(circuit, backend) result = backend.run(tqc, shots=4096).result()
The
CommutativeCancellationtranspiler pass has a new optional kwarg on the constructorbasis_gates, which takes the a list of the names of basis gates for the target backend. When specified the pass will only use gates in thebasis_gateskwarg. Previously, the pass would automatically replace consecutive gates which commute withZGatewith theU1Gateunconditionally. Thebasis_gateskwarg enables you to specify which z-rotation gates are present in the target basis to avoid this.வகுப்பின் கட்டமைப்பாளர்கள்:class:~ qiskit.circuit.Bit வகுப்பு மற்றும் துணைப்பிரிவுகள் ,:class:` ~ qiskit.circuit.Qubit` ,:class: ~ qiskit.circuit.Clbit, மற்றும்:class:` ~ qiskit .circuit.AncillaQubit`, அவற்றின் இரண்டு அளவுருக்கள், `` register`` மற்றும் `` index`` ஆகியவை இப்போது விருப்பமானவை. இது ஒரு பதிவேட்டில் இருந்து சுயாதீனமான பிட் பொருள்களை உருவாக்க உதவுகிறது.
ஒரு புதிய வகுப்பு ,:class: ~ qiskit.circuit.classicalfunction.BooleanExpression, இதில் சேர்க்கப்பட்டுள்ளது:mod:` qiskit.circuit.classicalfunction` தொகுதிக்கு. இந்த வகுப்பு பைதான் பூலியன் வெளிப்பாட்டிலிருந்து ஒரு ஆரக்கிளை உருவாக்க அனுமதிக்கிறது. உதாரணத்திற்கு:
from qiskit.circuit import BooleanExpression, QuantumCircuit expression = BooleanExpression('~x & (y | z)') circuit = QuantumCircuit(4) circuit.append(expression, [0, 1, 2, 3]) circuit.draw('mpl')
circuit.decompose().draw('mpl')
The
BooleanExpressionalso includes a method,from_dimacs_file(), which allows loading formulas described in the DIMACS-CNF format. For example:from qiskit.circuit import BooleanExpression, QuantumCircuit boolean_exp = BooleanExpression.from_dimacs_file("simple_v3_c2.cnf") circuit = QuantumCircuit(boolean_exp.num_qubits) circuit.append(boolean_exp, range(boolean_exp.num_qubits)) circuit.draw('text')
┌───────────────────┐ q_0: ┤0 ├ │ │ q_1: ┤1 ├ │ SIMPLE_V3_C2.CNF │ q_2: ┤2 ├ │ │ q_3: ┤3 ├ └───────────────────┘circuit.decompose().draw('text')
q_0: ──o────o──────────── │ │ q_1: ──■────o────■─────── │ │ │ q_2: ──■────┼────o────■── ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐ q_3: ┤ X ├┤ X ├┤ X ├┤ X ├ └───┘└───┘└───┘└───┘ஒரு புதிய வகுப்பைச் சேர்த்தது ,:class: ~ qiskit.circuit.library.PhaseOracle,:mod:` qiskit.circuit.library` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது. இந்த வகுப்பு பைதான் பூலியன் வெளிப்பாடுகளிலிருந்து கட்ட ஆரக்கிள் சுற்றுகளை உருவாக்க உதவுகிறது.
from qiskit.circuit.library.phase_oracle import PhaseOracle oracle = PhaseOracle('x1 & x2 & (not x3)') oracle.draw('mpl')
இந்த கட்ட ஆரக்கிள்களை ஒரு பெரிய வழிமுறையின் ஒரு பகுதியாகப் பயன்படுத்தலாம், எடுத்துக்காட்டாக:class: qiskit.algorithms.AmplificationProblem:
from qiskit.algorithms import AmplificationProblem, Grover from qiskit import BasicAer backend = BasicAer.get_backend('qasm_simulator') problem = AmplificationProblem(oracle, is_good_state=oracle.evaluate_bitstring) grover = Grover(quantum_instance=backend) result = grover.amplify(problem) result.top_measurement
'011'
The
PhaseOracleclass also includes afrom_dimacs_file()method which enables constructing a phase oracle from a file describing a formula in the DIMACS-CNF format.from qiskit.circuit.library.phase_oracle import PhaseOracle oracle = PhaseOracle.from_dimacs_file("simple_v3_c2.cnf") oracle.draw('text')
state_0: ─o───────o────────────── │ ┌───┐ │ ┌───┐ state_1: ─■─┤ X ├─■─┤ X ├─■────── │ └───┘ └───┘ │ ┌───┐ state_2: ─■───────────────o─┤ Z ├ └───┘அனைத்து டிரான்ஸ்பைலர் பாஸ்கள் (அதாவது எந்தவொரு நிகழ்வுகளும் :class:` ~qiskit.transpiler.BasePass`) இப்போது நேரடியாக அழைக்கப்படுகின்றன. பாஸை அழைப்பது ஒரு: வகுப்பில் பாஸை இயக்க வசதியான இடைமுகத்தை வழங்குகிறது :class: ~ qiskit.circuit.QuantumCircuit பொருள்.
எடுத்துக்காட்டாக,:class: ~ qiskit.transpiler.passes.BasisTranslator போன்ற ஒற்றை உருமாற்ற பாஸை இயக்குவது:
from qiskit import QuantumCircuit from qiskit.transpiler.passes import BasisTranslator from qiskit.circuit.equivalence_library import SessionEquivalenceLibrary as sel circuit = QuantumCircuit(1) circuit.h(0) pass_instance = BasisTranslator(sel, ['rx', 'rz', 'cx']) result = pass_instance(circuit) result.draw(output='mpl')
பகுப்பாய்வு பாஸை இயக்கும்போது, ஒரு சொத்து தொகுப்பு (
dictஅல்லது:class: ~ qiskit.transpiler.PropertySet) ஒரு அளவுருவாக சேர்க்கப்பட வேண்டும், மேலும் அது"in-place". உதாரணத்திற்கு:from qiskit import QuantumCircuit from qiskit.transpiler.passes import Depth circuit = QuantumCircuit(1) circuit.h(0) property_set = {} pass_instance = Depth() pass_instance(circuit, property_set) print(property_set)
{'depth': 1}The
QasmQobjConfigclass now has an optional kwarg formeas_levelandmeas_return. These fields can be used to enable generatingQasmQobjjob payloads that supportmeas_level=1(kerneled data) for circuit jobs (previously this was only exposed forPulseQobjobjects). Theassemble()function has been updated to set this field forQasmQobjobjects it generates.ஒரு புதிய:meth: ~ qiskit.circuit.QuantumCircuit.tensor முறை: வகுப்பில் சேர்க்கப்பட்டுள்ளது :class:` ~ qiskit.circuit.QuantumCircuit` வகுப்பில். இந்த முறை ஏற்கனவே இருக்கும் சுற்றுடன் மற்றொரு சுற்றுக்கு டென்சார் செய்ய உதவுகிறது. இந்த முறை இதற்கு ஒத்ததாக செயல்படுகிறது:meth: qiskit.quantum_info.Operator.tensor மற்றும் இது Qiskit டின் சிறிய-எண்டியன் மாநாட்டோடு ஒத்துப்போகிறது.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit top = QuantumCircuit(1) top.x(0); bottom = QuantumCircuit(2) bottom.cry(0.2, 0, 1); bottom.tensor(top).draw(output='mpl')
The
qiskit.circuit.QuantumCircuitclass now supports arbitrary free form metadata with themetadataattribute. A user (or program built on top ofQuantumCircuit) can attach metadata to a circuit for use in tracking the circuit. For example:from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(2, user_metadata_field_1='my_metadata', user_metadata_field_2='my_other_value')
அல்லது:
from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(2) qc.metadata = {'user_metadata_field_1': 'my_metadata', 'user_metadata_field_2': 'my_other_value'}
இந்த மெட்டாடேட்டா ** சுற்றுவட்டத்தின் செயல்பாட்டை பாதிக்க ** பயன்படுத்தப்படாது, ஆனால் பொருளின் வாழ்நாளில் சுற்று கண்காணிக்க பயன்படுத்தப்படுகிறது. `` மெட்டாடேட்டா`` பண்புக்கூறு எந்தவொரு சுற்று மாற்றங்களுக்கும் இடையில் நீடிக்கும்:func: ~ qiskit.compiler.transpile மற்றும்:func:` ~ qiskit.compiler.assemble`. மெட்டாடேட்டாவைத் தரும் முடிவில் வழங்குநர்கள் அதை இணைப்பதே எதிர்பார்ப்பு, இதனால் பயனர்கள் சர்க்யூட் மெட்டாடேட்டாவின் அடிப்படையில் முடிவுகளை
QuantumCircuit.nameஉடன் தற்போது செய்யக்கூடிய வழியில் வடிகட்டலாம்.ஒரு புதிய ஆபரேட்டர் வகுப்பைச் சேர்க்கவும்:class: ~ qiskit.quantum_info.CNOTDihedral :mod:` qiskit.quantum_info` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது. குவாண்டம் வாயில்களால் உருவாக்கப்படும் சி.என்.ஓ.டி-டைஹெட்ரல் குழுவைக் குறிக்க இந்த வகுப்பு பயன்படுத்தப்படுகிறது:class: ~ qiskit.circuit.library.CXGate ,:class:` ~ qiskit.circuit.library.TGate`, மற்றும்:class: ~ qiskit.circuit.library.XGate.
ஒரு `` & `` (
__and__) பைனரி ஆபரேட்டரைBaseOperatorதுணைப்பிரிவுகளில் (எ.கா.:class: qiskit.quantum_info.Operator):mod:` qiskit.quantum_info` தொகுதியில் சேர்க்கிறது. வகுப்புகளை அழைப்பதற்கான சுருக்கெழுத்து இது:meth: ~ qiskit.quantum_info.Operator.compose முறை (அதாவது` A & B == A.compose (B) `).உதாரணத்திற்கு:
import qiskit.quantum_info as qi qi.Pauli('X') & qi.Pauli('Y')
`` & `` (`` __and__``) பைனரி ஆபரேட்டரைச் சேர்க்கிறது :class: qiskit.quantum_info.Statevector மற்றும் :class:` qiskit.quantum_info.DensityMatrix` வகுப்புகள். வகுப்புகளை அழைக்க இது சுருக்கெழுத்து:meth: ~ qiskit.quantum_info.Statevector.evolve முறை (அதாவது
psi & U == psi.evolve (U)).உதாரணத்திற்கு:
import qiskit.quantum_info as qi qi.Statevector.from_label('0') & qi.Pauli('X')
ஒரு புதிய 2-குவிட் கேட் ,:class: ~ qiskit.circuit.library.ECRGate, எதிரொலி குறுக்கு-அதிர்வு (ECR), இதில் சேர்க்கப்பட்டுள்ளது:mod:` qiskit.circuit.library` தொகுதிக்கு ஒரு தொடர்புடைய முறை ,:meth: ~ qiskit.circuit.QuantumCircuit.ecr:class:` ~ qiskit.circuit.QuantumCircuit` வகுப்புக்கு. ECR கேட் இரண்டு:math: CR(frac{π}{4}) பருப்பு வகைகள்:class: ~ qiskit.circuit.library.XGate அவற்றுக்கு இடையில் எதிரொலி. இந்த வாயில் உள்நாட்டில் ஒரு: வகுப்பிற்கு சமம் :class: ~ qiskit.circuit.library.CXGate (உள்ளூர் முன் அல்லது பிந்தைய சுழற்சியுடன் CNOT ஆக மாற்றலாம்). இது தற்போதைய ஐபிஎம் வன்பொருளில் உள்ள சொந்த வாயில் மற்றும் அதை தொகுப்பது முந்தைய / பிந்தைய சுழற்சிகளை மீதமுள்ள சுற்றுடன் இணைக்க அனுமதிக்கிறது.
தோராயமான தொகுப்பை இயக்குவதற்கான ஒரு புதிய குவார்க்
approximation_degree:func: ~ qiskit.compiler.transpile செயல்பாட்டில் சேர்க்கப்பட்டுள்ளது. செல்லுபடியாகும் மதிப்புகள் 0 முதல் 1 வரை இருக்கும், மேலும் உயர்ந்தது குறைவான தோராயமாகும். சுற்று தோராயங்களை பரிசோதிக்க இது ஒரு ஹூரிஸ்டிக் டயல். இந்த எண்ணின் உறுதியான விளக்கம் ஒவ்வொரு பாஸிலும் விடப்படுகிறது, இது பாஸின் தோராயமான பதிப்பைச் செய்ய அதைப் பயன்படுத்தலாம். குறிப்பிட்ட எடுத்துக்காட்டுகளில்:class: ~ qiskit.transpiler.passes.UnitarySynthesis பாஸ் அல்லது தனித்தனி கேட் செட்களுக்கான மொழிபெயர்ப்பாளர்கள். ஒரு பாஸ் இந்த விருப்பத்தை ஆதரிக்கவில்லை என்றால், அது சரியான மாற்றத்தைக் குறிக்கிறது.இரண்டு புதிய டிரான்ஸ்பைலர் பாஸஸ் ,:class: ~ qiskit.transpiler.passes.GateDirection மற்றும்:class:` qiskit.transpiler.passes.CheckGateDirection`, ஆகியவை:mod: qiskit.transpiler.passes தொகுதிக்கு சேர்க்கப்பட்டன. இந்த புதிய பாஸ்கள் இன்னும் பொதுவான மாற்றாக இருக்க வேண்டும்:class: ~ qiskit.transpiler.passes.CXDirection மற்றும்:class:` ~ qiskit.transpiler.passes.CheckCXDirection` (இவை இரண்டும் இப்போது நீக்கப்பட்டன, அதற்கான நீக்குதல் குறிப்புகளைப் பார்க்கவும் மேலும் விவரங்கள்) ஒரே செயல்பாட்டைச் செய்கின்றன, ஆனால் அருகிலுள்ள மற்ற வாயில்களுடன் வேலை செய்கின்றன :class: ~ qiskit.circuit.library.CXGate.
விண்டோஸ் இயங்கும் போது, இணை செயலாக்கம் :func:'~qiskit.tools.parallel_map' செயல்பாடு இப்போது செயல்படுத்த முடியும் (அது இன்னும் இயல்புநிலை முடக்கப்பட்டது). இதைச் செய்ய நீங்கள் ஒரு பயனர் உள்ளமைகோப்பில் 'இணை = உண்மை' என்பதை அமைக்கலாம், அல்லது 'QISKIT_PARALLEL' சுற்றுச்சூழல் மாறியை 'உண்மை' என்று அமைக்கலாம் (இது :func:'~qiskit.compiler.transpile' மற்றும் :func:'~qiskit.compiler.assemble', இவை இரண்டும் உள்நிலையில் பயன்படுத்துகின்றன :func:'~qiskit.tools.parallel_map'). விண்டோஸ் இணைத்தன்மை செயல்படுத்தும் போது பைத்தான் விண்டோஸ் செயல்முறைகள் தொடங்குகிறது எப்படி சுற்றி வரம்புகள் உள்ளன என்பதை கவனத்தில் கொள்ள வேண்டும், விண்டோஸ் இணை செயலாக்கம் வரம்புகள் மேலும் விவரங்களுக்கு கீழே அறியப்பட்ட சிக்கல்கள் பிரிவில் பார்க்க.
ஒரு புதிய செயல்பாடு ,:func: ~ qiskit.quantum_info.hellinger_distance, இரண்டு எண்ணிக்கையிலான விநியோகங்களுக்கு இடையில் ஹெலிங்கர் தூரத்தை கணக்கிடுவதற்கு:mod:` qiskit.quantum_info` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது.
தி:func: ~ qiskit.quantum_info.decompose_clifford இன் செயல்பாடு:mod:` qiskit.quantum_info` module (இது உள்நாட்டில் பயன்படுத்தப்படுகிறது:meth: qiskit.quantum_info.Clifford.to_circuit முறை), இது
'AG'அல்லது` ' greedy' என அமைப்பதன் மூலம் பயன்படுத்தப்படும் தொகுப்பு முறையைத் தேர்ந்தெடுக்க உதவுகிறது. முன்னிருப்பாக மூன்று வினாடிகளுக்கு மேல் இது `` 'greedy'` என அமைக்கப்பட்டுள்ளது, இது கிளிஃபோர்ட் கூறுகளின் தொகுப்புக்கான உகந்த அல்லாத பேராசை தொகுப்பு வழக்கத்தைப் பயன்படுத்துகிறது, பிராவி மற்றும். அல்., இது முன்னர் பயன்படுத்தப்பட்ட ஆரோன்சன்-கோட்டெஸ்மேன் முறையுடன் ஒப்பிடும்போது சிறந்த சிஎக்ஸ் செலவை அளிக்கிறது (இரண்டு வினாடிகளுக்கு மேல்).method=AGஅமைப்பதன் மூலம் முந்தைய இயல்புநிலை ஆரோன்சன்-கோட்டெஸ்மேன் முறைக்கு மாற்றmethodகுவார்க்கைப் பயன்படுத்தலாம்.The
Initializeclass in theqiskit.extensionsmodule can now be constructed using an integer. The '1' bits of the integer will insert aResetand anXGateinto the circuit for the corresponding qubit. This will be done using the standard little-endian convention is qiskit, ie the rightmost bit of the integer will set qubit 0. For example, setting the parameter inInitializeequal to5will set qubits 0 and 2 to value 1.from qiskit.extensions import Initialize initialize = Initialize(13) initialize.definition.draw('mpl')
The
Initializeclass in theqiskit.extensionsmodule now supports constructing directly from a Pauli label (analogous to theqiskit.quantum_info.Statevector.from_label()method). The Pauli label refer to basis states of the Pauli eigenstates Z, X, Y. These labels use Qiskit's standard little-endian notation, for example a label of'01'would initialize qubit 0 to \(|1\rangle\) and qubit 1 to \(|0\rangle\).from qiskit.extensions import Initialize initialize = Initialize("10+-lr") initialize.definition.draw('mpl')
The kwarg,
template_list, for the constructor of theqiskit.transpiler.passes.TemplateOptimizationtranspiler pass now supports taking in a list of bothQuantumCircuitandDAGDependencyobjects. Previously, onlyQuantumCircuitwere accepted (which were internally converted toDAGDependencyobjects) in the input list.ஒரு புதிய டிரான்ஸ்பைலர் பாஸ் ,: py:class: qiskit.transpiler.passes.RZXCalibrationBuilder, அளவுத்திருத்தங்களை உருவாக்கி அவற்றை ஒரு குவாண்டம் சுற்றுக்குச் சேர்க்கும் திறன் அறிமுகப்படுத்தப்பட்டுள்ளது. இந்த பாஸ் அளவுத்திருத்தத்தை எடுக்கும்:class: ~ qiskit.circuit.library.CXGate பொருள்கள் மற்றும் அதற்கான அளவுத்திருத்தங்களை உருவாக்குகிறது:class:` qiskit.circuit.library.RZXGate` பொருள்கள் தன்னிச்சையான சுழற்சி கோணத்துடன். வகுப்புகள் :class: ~ qiskit.pulse.GaussianSquare எதிரொலித்த-குறுக்கு அதிர்வு வாயில்களின் பருப்பு வகைகளை நீட்டி சுருக்கி அட்டவணைகள் உருவாக்கப்படுகின்றன.
பயன்படுத்த புதிய டெம்ப்ளேட் சுற்றுகள்:class: qiskit.circuit.library.RZXGate :mod:` qiskit.circuit.library` தொகுதிக்கு (எ.கா.:class: ~qiskit.circuit.library.rzx_yz) சேர்க்கப்பட்டுள்ளது. இது:class: ~ qiskit.transpiler.passes.TemplateOptimization உடன்: py:class:` qiskit.transpiler.passes.RZXCalibrationBuilder` பாஸுடன் இணைக்க உதவுகிறது. `` CNOT - P (தீட்டா) - CNOT``, இதன் அடிப்படையில் மிகவும் திறமையான சுற்றுகள்:class: qiskit.circuit.library.RZXGate ஒரு அளவுத்திருத்தத்துடன்.
The matplotlib output type for the
circuit_drawer()and thedraw()method for theQuantumCircuitclass now supports configuration files for setting the visualization style. In previous releases, there was basic functionality that allowed users to pass in astylekwarg that took in adictto customize the colors and other display features of thempldrawer. This has now been expanded so that these dictionaries can be loaded from JSON files directly without needing to pass a dictionary. This enables users to create new style files and use that style for visualizations by passing the style filename as a string to thestylekwarg.இந்த அம்சத்தை மேம்படுத்துவதற்கு நீங்கள் ஒரு பயனர் உள்ளமைவு கோப்பில் `` Circuit_mpl_style_path`` விருப்பத்தை அமைக்க வேண்டும். பாணி JSON கோப்புகளைத் தேட qiskit விரும்பும் பாதையில் இந்த விருப்பத்தை அமைக்க வேண்டும். பல பாதை உள்ளீடுகளைக் குறிப்பிடினால், அவற்றை
:பிரிக்க வேண்டும். எடுத்துக்காட்டாக, ஒரு பயனர் உள்ளமைவு கோப்பில்circuit_mpl_style_path = ~/.qiskit:~/user_stylesஐ அமைப்பது JSON கோப்புகளை~/.qiskitand~/user_stylesஆகிய இரண்டிலும் தேடும்.ஒரு புதிய குவார்க்,
format_marginalசெயல்பாட்டில் சேர்க்கப்பட்டுள்ளது:func: ~ qiskit.result.utils.marginal_counts, இதுtrueஎன அமைக்கப்பட்டால், எண்ணிக்கையின் வெளியீட்டை வடிவமைக்கிறது:attr:~qiskit சர்க்யூட்டில் உள்ள .circuit.QuantumCircuit.cregs மற்றும் காணாமல் போன குறியீடுகள் `` _`` உடன் குறிப்பிடப்படுகின்றன. உதாரணத்திற்கு:from qiskit import QuantumCircuit, execute, BasicAer, result from qiskit.result.utils import marginal_counts qc = QuantumCircuit(5, 5) qc.x(0) qc.measure(0, 0) result = execute(qc, BasicAer.get_backend('qasm_simulator')).result() print(marginal_counts(result.get_counts(), [0, 2, 4], format_marginal=True))
{'0_0_1': 1024}Improved the performance of
qiskit.quantum_info.Statevector.expectation_value()andqiskit.quantum_info.DensityMatrix.expectation_value()when the argument operator is aPauliorSparsePauliOpoperator.பயனர் உள்ளமைவு கோப்பில் 2 புதிய உள்ளமைவு விருப்பங்கள் உள்ளன,
num_processesமற்றும்parallel, இவை இயல்புநிலை நடத்தையை கட்டுப்படுத்தப் பயன்படுகின்றன:func: ~ qiskit.tools.parallel_map. `` இணையான`` விருப்பம் ஒரு பூலியன் ஆகும்: இது :func: ~ qiskit.tools.parallel_map பல செயல்முறைகளில் இயங்குமா இல்லையா என்பதைக் கட்டளையிட பயன்படுகிறது. இது `` False`` அழைப்புகளுக்கு அமைக்கப்பட்டால் :func: ~ qiskit.tools.parallel_map தொடர்ச்சியாக செயல்படுத்தப்படும், அதே சமயம்Trueஎன அமைப்பது இணையாக செயல்படுத்தப்படும்.num_processesவிருப்பம் ஒரு முழு எண்ணை எடுக்கும், இது இணையாக இயங்கும்போது எத்தனை CPU களைப் பயன்படுத்த வேண்டும் என்பதை அமைக்கிறது. இயல்பாக இது ஒரு கணினியில் CPU கோர்களின் எண்ணிக்கையைப் பயன்படுத்தும்.2 புதிய சூழல் மாறிகள் உள்ளன, `` QISKIT_PARALLEL`` மற்றும் `` QISKIT_NUM_PROCS``, இவை இயல்புநிலை நடத்தையை கட்டுப்படுத்த பயன்படுத்தப்படலாம் :func: ~qiskit.tools.parallel_map. பல செயல்முறைகளில் இயங்க இயல்புநிலையை அமைக்க `` QISKIT_PARALLEL`` விருப்பத்தை `` True`` (எந்த மூலதனமாக்கல்) என அமைக்கலாம் :func: ~qiskit.tools.parallel_map என அழைக்கப்படும் போது. இது வேறு எந்த மதிப்புக்கும் அமைக்கப்பட்டால் :func: ~qiskit.tools.parallel_map தொடர்ச்சியாக செயல்படுத்தப்படும். `` QISKIT_NUM_PROCS`` ஒரு முழு எண்ணை எடுக்கிறது (எடுத்துக்காட்டாக `` QISKIT_NUM_PROCS = 5``) இது இயங்குவதற்கான செயல்முறைகளின் இயல்புநிலை எண்ணிக்கையாகப் பயன்படுத்தப்படும். இவை இரண்டும் பயனர் கட்டமைப்பு கோப்பில் அமைக்கப்பட்ட சமமான விருப்பத்தை விட முன்னுரிமை பெறும்.
ஒரு புதிய முறை ,:meth: ~qiskit.circuit.ParameterExpression.gradient, வகுப்பில் சேர்க்கப்பட்டுள்ளது
ParameterExpressionவகுப்பில். :class: ~ qiskit.circuit.ParameterExpression பொருளின் சாய்வு மதிப்பீடு செய்ய இந்த முறை பயன்படுத்தப்படுகிறது.வகுப்பிற்கான `` __eq__`` முறை (அதாவது `` == `` ஆபரேட்டர் பயன்படுத்தப்படும்போது அழைக்கப்படுகிறது) :class: ~qiskit.circuit.ParameterExpression இப்போது ஒரு எண் மதிப்புடன் ஒப்பிட்டுப் பார்க்க அனுமதிக்கிறது. முன்னதாக, வர்க்கத்தின் இரண்டு நிகழ்வுகளை மட்டுமே ஒப்பிட முடியும் :class: ~ qiskit.circuit.ParameterExpression உடன் ``==` `. உதாரணத்திற்கு:
from qiskit.circuit import Parameter x = Parameter("x") y = x + 2 y = y.assign(x, -1) assert y == 1
The
PauliFeatureMapclass in theqiskit.circuit.librarymodule now supports adjusting the rotational factor, \(\alpha\), by either setting using the kwargalphaon the constructor or setting thealphaattribute after creation. Previously this value was fixed at2.0. Adjusting this attribute allows for better control of decision boundaries and provides additional flexibility handling the input features without needing to explicitly scale them in the data set.ஒரு புதிய:class: ~ qiskit.circuit.Gate , :class:` ~ qiskit.circuit.library.PauliGate`, சேர்க்கப்பட்டுள்ளது :class: qiskit.circuit.library தொகுதி மற்றும் தொடர்புடைய முறை ,:meth: ~ qiskit.circuit.QuantumCircuit.pauli, வகுப்பில் சேர்க்கப்பட்டது :class:` ~ qiskit.circuit.QuantumCircuit` வகுப்பில். இந்த புதிய கேட் வகுப்பு ஒரே நேரத்தில் வெவ்வேறு குவிட்டுகளுக்கு பல தனிப்பட்ட பாலி வாயில்களைப் பயன்படுத்த உதவுகிறது. ஒரே நேரத்தில் பல பாலி வாயில்களை மிகவும் திறமையாக செயல்படுத்த இந்த புதிய வாயிலைப் பயன்படுத்தக்கூடிய சிமுலேட்டர்களுக்கு இது முதன்மையாக பயனுள்ளதாக இருக்கும்.
வகுப்பை மேம்படுத்தவும் :class: qiskit.quantum_info.Pauli ஆபரேட்டர். இந்த வர்க்கம் இப்போது சிக்கலான குணகங்களை உள்ளடக்கிய முழு N-qubit Pauli குழுவிலிருந்து பிரதிநிதித்துவப்படுத்துகிறது. இது இப்போது ஆபரேட்டர் ஏபிஐ முறைகளை ஆதரிக்கிறது :meth: ~ qiskit.quantum_info.Pauli.compose , :meth:` ~ qiskit.quantum_info.Pauli.dot` ,:meth: ~ qiskit.quantum_info.Pauli.tensor போன்றவை , முழு பவுலி குழுவைப் பொறுத்து இசையமைத்தல் மற்றும் புள்ளி ஆகியவை வரையறுக்கப்படுகின்றன.
இந்த வகுப்பு வசதிக்காக பவுலியின் சரம் பிரதிநிதித்துவத்திற்கு மாற்றுவதற்கும் அனுமதிக்கிறது.
உதாரணத்திற்கு
from qiskit.quantum_info import Pauli P1 = Pauli('XYZ') P2 = Pauli('YZX') P1.dot(P2)
Pauli('-iZXY')பவுலியையும் நேரடியாக இணைக்கலாம் :class: ~ qiskit.circuit.QuantumCircuit பொருள்கள்
from qiskit import QuantumCircuit from qiskit.quantum_info import Pauli circ = QuantumCircuit(3) circ.append(Pauli('XYZ'), [0, 1, 2]) circ.draw(output='mpl')
கூடுதல் முறைகள் இரண்டு பவுலியின் பயணத்தின் போது (:meth: q qiskit.quantum_info.Pauli.commutes முறையைப் பயன்படுத்தி) அல்லது ஆன்டிகாம்முட் (
anticommutes()முறையைப் பயன்படுத்தி), மற்றும் கணக்கிடும்போது கணக்கிட அனுமதிக்கின்றன. கிளிஃபோர்டு இணைப்பின் விளைவாக உருவாகும் பவுலி \(P^\prime = C.P.C^\dagger\) ஐப் பயன்படுத்தி :meth:` ~ qiskit.quantum_info.Pauli.evolve` முறையைப் பயன்படுத்துதல்.கூடுதல் தகவலுக்கு :class: ~qiskit.quantum_info.Pauli வகுப்பின் API ஆவணங்களைக் காண்க.
ஒரு புதிய செயல்பாடு ,:func: ~ qiskit.quantum_info.random_pauli, N-qubit Pauli குழுவின் சீரற்ற உறுப்பை உருவாக்குவதற்கு:mod:` qiskit.quantum_info` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது.
ஒரு புதிய வகுப்பு ,:class: ~ qiskit.circuit.library.PiecewisePolynomialPauliRotations, இதில் சேர்க்கப்பட்டுள்ளது :mod:` qiskit.circuit.library` தொகுதிக்கு. இந்த சுற்று நூலக உறுப்பு ஒரு பிஸ்கேஸ் பல்லுறுப்புறுப்பு செயல்பாட்டை மேப்பிங் செய்யப் பயன்படுகிறது :math: f (x), இது இடைவெளி புள்ளிகள் மற்றும் குணகங்களின் மூலம் வரையறுக்கப்படுகிறது, இது குவிட் பெருக்கங்களில். முறிவு புள்ளிகள் :math: (x_0, ..., x_J) என்பதன் துணைக்குழு:math: [0, 2 ^ n-1], எங்கே :math: n என்பது மாநில குவிட்களின் எண்ணிக்கை. தொடர்புடைய குணகங்கள் :math: [a_{j,1}, ..., a_ {j,d}], எங்கே :math: d என்பது அனைத்து பல்லுறுப்புக்கோவைகளிலும் மிக உயர்ந்த பட்டம். பின்னர் \(f(x)\) என வரையறுக்கப்படுகிறது:
\[\begin{split}f(x) = \begin{cases} 0, x < x_0 \\ \sum_{i=0}^{i=d}a_{j,i} x^i, x_j \leq x < x_{j+1} \end{cases}\end{split}\]நாம் மறைமுகமாக கருதுகிறோம் :math: x_{J+1}= 2 ^ n. மேலும் பெருக்கங்களுக்கு பயன்படுத்தப்படும் மேப்பிங் வழங்கப்படுகிறது
\[F|x\rangle |0\rangle = \cos(p_j(x))|x\rangle |0\rangle + \sin(p_j(x))|x\rangle |1\rangle\]இந்த மேப்பிங் கட்டுப்படுத்தப்பட்ட பவுலி ஒய்-சுழற்சிகளை அடிப்படையாகக் கொண்டது மற்றும் வகுப்பைப் பயன்படுத்தி கட்டப்பட்டது :class: ~ qiskit.circuit.library.PolynomialPauliRotations.
ஒரு புதிய தொகுதி:mod: qiskit.algorithms அறிமுகப்படுத்தப்பட்டுள்ளது. இந்த தொகுதி முன்னர் வழங்கியவற்றிற்கு சமமான செயல்பாட்டைக் கொண்டுள்ளது:mod: qiskit.aqua.algorithms தொகுதி (இது இப்போது நீக்கப்பட்டது) மற்றும் குவாண்டம் வழிமுறைகளை உருவாக்குவதற்கான கட்டுமானத் தொகுதிகளை வழங்குகிறது. இந்த புதிய தொகுதிக்கு
qiskit-aquaஇலிருந்து இடம்பெயர்வது குறித்த விவரங்களுக்கு தயவுசெய்து இடம்பெயர்வு வழிகாட்டியைப் பார்க்கவும் Qiskit அக்வா இடம்பெயர்வு வழிகாட்டிஅக்வாஒரு புதிய தொகுதி :mod: qiskit.opflow அறிமுகப்படுத்தப்பட்டுள்ளது. இந்த தொகுதி முன்னர் வழங்கியவற்றிற்கு சமமான செயல்பாட்டைக் கொண்டுள்ளது :mod: qiskit.aqua.operators module (இது இப்போது நீக்கப்பட்டது) மற்றும் குவாண்டம் வழிமுறைகளை உருவாக்க பயன்படும் ஆபரேட்டர்கள் மற்றும் மாநில செயல்பாடுகளை வழங்குகிறது. இந்த புதிய தொகுதிக்கு
qiskit-aquaஇலிருந்து இடம்பெயர்வது குறித்த விவரங்களுக்கு தயவுசெய்து இடம்பெயர்வு வழிகாட்டியைப் பார்க்கவும் :ref: அக்வா-இடம்பெயர்வுலினக்ஸ் அராச் 64 அமைப்புகளுக்கான முன் தொகுக்கப்பட்ட பைனரி சக்கரங்களை உள்ளடக்கிய முதல் வெளியீடு இதுவாகும். நீங்கள் பல லினக்ஸ் 2014 இணக்கமான aarch64 லினக்ஸ் அமைப்பை இயக்குகிறீர்கள் என்றால், இப்போது PyPI இல் முன்பே தொகுக்கப்பட்ட சக்கரங்கள் உள்ளன, கிஸ்கிட்-டெர்ராவை நிறுவ நீங்கள் இனி மூலத்திலிருந்து உருவாக்க வேண்டியதில்லை.
The
qiskit.quantum_info.process_fidelity()function is now able to be used with a non-unitary target channel. In this case the returned value is equivalent to theqiskit.quantum_info.state_fidelity()of the normalizedqiskit.quantum_info.Choimatrices for the channels.நினைவில் கொள்ளுங்கள்:func: qiskit.quantum_info.average_gate_fidelity மற்றும் :func:` qiskit.quantum_info.gate_error` செயல்பாடுகளுக்கு இலக்கு சேனல் ஒற்றுமையாக இருக்க வேண்டும், அது இல்லாவிட்டால் விதிவிலக்கு எழுப்புகிறது.
புதிய துடிப்பு பில்டர் செயல்பாட்டைச் சேர்த்தது , :func: qiskit.pulse.macro. இது சாதாரண பைதான் செயல்பாடுகளை மேக்ரோக்களாக அலங்கரிக்க உதவுகிறது. இது துடிப்பு பில்டர் செயல்பாடுகளை அலங்கரிக்கப்பட்ட செயல்பாட்டிற்குள் பயன்படுத்த உதவுகிறது. பில்டர் மேக்ரோவை ஒரு துடிப்பு கட்டிட சூழலில் இருந்து அழைக்கலாம், இது குறியீடு மறுபயன்பாட்டை செயல்படுத்துகிறது.
உதாரணத்திற்கு:
from qiskit import pulse @pulse.macro def measure(qubit: int): pulse.play(pulse.GaussianSquare(16384, 256, 15872), pulse.MeasureChannel(qubit)) mem_slot = pulse.MemorySlot(0) pulse.acquire(16384, pulse.AcquireChannel(0), mem_slot) return mem_slot with pulse.build(backend=backend) as sched: mem_slot = measure(0) print(f"Qubit measured into {mem_slot}") sched.draw()
ஒரு புதிய வகுப்பு ,:class: ~ qiskit.circuit.library.PauliTwoDesign, இதில் சேர்க்கப்பட்டுள்ளது:mod:` qiskit.circuit.library` இது https://arxiv.org/pdf/1803.11173.pdf இலிருந்து 2-வடிவமைப்பு சுற்றுக்கான ஒரு குறிப்பிட்ட வடிவத்தை செயல்படுத்துகிறது. உதாரணமாக, இந்த சுற்று இப்படி இருக்கும்:
from qiskit.circuit.library import PauliTwoDesign circuit = PauliTwoDesign(4, reps=2, seed=5, insert_barriers=True) circuit.decompose().draw(output='mpl')
ஒரு புதிய துடிப்பு இழுப்பறை :func:'qiskit.visualization.pulse_v2.draw' (இது 'qiskit.visualization.pulse_drawer_v2' என்று அழைக்கப்படுகிறது) இப்போது கிடைக்கிறது. இந்த புதிய துடிப்பு இழுப்பறை அசல் துடிப்பு இழுப்பறையில் இல்லாத பல புதிய அம்சங்களை ஆதரிக்கிறது (:func:'~qiskit.visualization.pulse_drawer').
நீண்ட பல்ஸ் வழிமுறைகளை திருகுதல்.
பாராமெட்ரிக் பருப்புவகைகளை காட்சிப்படுத்துதல்.
புதிய பாணிதாள்கள் 'ஐக்யூஎக்ஸ்ஸ்டாண்டர்ட்', 'ஐக்யூஎக்ஸ்சிம்பிள்', 'ஐக்யூஎக்ஸ்டிபக்கிங்'.
கணினி தகவல் காட்சிப்படுத்தல் (சேனல் அதிர்வெண், முதலியன...) குறிப்பிடுவதன் மூலம் :class:'கிஸ்கிட்.வழங்குநர்கள்.பேக்எண்ட்' காட்சிப்படுத்தலுக்கான பொருள்கள்.
உருவாக்கப்பட்ட மனைகளை மேலும் நீட்டிக்க, அதாவது, வெளியீடு கையாளுதல்களுக்கு அனுமதிக்கும் சதித்திட்டம் 'அச்சு' பொருட்களைகுறிப்பிடுதல்.
புதிய பாணிதாள்கள் வெளியீடு படத்தின் அபெராஸை மாறும் வகையில் மாற்றியமைக்கும் அழைப்பு செயல்பாடுகளை எடுக்கலாம், எடுத்துக்காட்டாக, சேனல்களின் தொகுப்பை மீண்டும் ஒன்றுசேர்ப்பது, அறிவுறுத்தல்களின் விவரங்களைக் காட்டுவது, துடிப்பு உறைகளின் தோற்றத்தைபுதுப்பிப்பது போன்றவை... நீங்கள் விருப்ப அழைப்பு செயல்பாடுகளை உருவாக்க மற்றும் இழுப்பறை குறியீடு மாற்றாமல் எண்ணிக்கை தோற்றத்தை மாற்ற ஒரு பாணிதாள் நிகழ்வில் அவற்றை உணவளிக்க முடியும். விவரங்களுக்கு துடிப்பு இழுப்பறை தொகுதி ஆவணக்சரங்களைப் பார்க்கவும்.
கோப்பு சேமிப்பு இப்போது மாட்ப்ளோட்லிப்பிற்கு ஒப்படைக்கப்பட்டுள்ளது என்பதை நினைவில் கொள்க. படிமக் கோப்புகளைச் சேமிக்க, 'savefig' முறையை திருப்பிய 'Figure' பொருள் மூலம் அழைக்க வேண்டும்.
ஒரு சேர்க்கிறது :meth:'~qiskit.quantum_info. Statevector.reverse_qargs' முறை :class:'qiskit.quantum_info. ஸ்டேட்வெக்டர்' மற்றும் :class:'qiskit.quantum_info. அடர்த்தி மேட்ரிக்ஸ் வகுப்புகள். இந்த முறை மாநிலங்களில் துணை அமைப்புகளின் வரிசையை மாற்றியமைக்கிறது மற்றும் என்-குபிட் மாநிலங்களுக்கான :meth:'qiskit.circuit.QuantumCircuit.reverse_bits' முறைக்கு சமமானது. உதாரணமாக:
from qiskit.circuit.library import QFT from qiskit.quantum_info import Statevector circ = QFT(3) state1 = Statevector.from_instruction(circ) state2 = Statevector.from_instruction(circ.reverse_bits()) state1.reverse_qargs() == state2
True
ஒரு சேர்க்கிறது :meth:'~qiskit.quantum_info. Operator.reverse_qargs' முறை :class:'qiskit.quantum_info. ஆபரேட்டர் வகுப்பு. இந்த முறை ஆபரேட்டரைதுணை அமைப்புகளின் வரிசையை மாற்றியமைக்கிறது மற்றும் என்-குபிட் ஆபரேட்டர்களுக்கான :meth:'qiskit.circuit.QuantumCircuit.reverse_bits' முறைக்கு சமமானது. உதாரணமாக:
from qiskit.circuit.library import QFT from qiskit.quantum_info import Operator circ = QFT(3) op1 = Operator(circ) op2 = Operator(circ.reverse_bits()) op1.reverse_qargs() == op2
True
"latex" வெளியீடு முறை :func:'qiskit.visualization.circuit_drawer' செயல்பாடு மற்றும் :meth:'~qiskit.circuit.QuantumCircuit.draw' முறை இப்போது வெளியீடு காட்சிப்படுத்தலில் வாயில்களில் ஒரு பயனர் வரையறுக்கப்பட்ட லேபிளைப் பயன்படுத்தும். உதாரணமாக:
import math from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(2) qc.h(0) qc.rx(math.pi/2, 0, label='My Special Rotation') qc.draw(output='latex')
"routing_method" க்வார்க் :func:"~qiskit.compiler.transpile" செயல்பாட்டிற்கான க்வார்க் இப்போது ஒரு புதிய விருப்பத்தை ஏற்றுக்கொள்கிறது, "எதுவும் இல்லை". 'routing_method='எதுவும் இல்லை' என்ற போது, பரிமாற்றத்தின் ஒரு பகுதியாக எந்த ரூட்டிங் பாஸ் இயக்கப்படாது. சுற்று இணைப்பு வரைபடத்தில் பொருந்தவில்லை என்றால் :class:'~qiskit.transpiler.exceptions.TranspilerError' விதிவிலக்கு எழுப்பப்படும்.
ஒரு புதிய வாயில் :class:'~qiskit.circuit.library.RVGate', தொடர்புடைய :mod:'qiskit.circuit.library' தொகுதியுடன் சேர்க்கப்பட்டது:class:'~qiskit.circuit.QuantumCircuit' முறை :meth:'~qiskit.circuit.QuantumCircuit.rv'. :class:'~qiskit.circuit.library.RVGate' என்பது ஒரு பொதுவான சுழற்சி வாயில் ஆகும், இது :class:'~qiskit.circuit.library.UGate', ஆனால் யூலர் கோணங்களைக் குறிப்பிடுவதற்குப் பதிலாக, ஒரு சுழற்சி திசையனின் மூன்று கூறுகளும் சுழற்சி அச்சைக் குறிப்பிடுகின்றன மற்றும் ரேடான்களில் அச்சு பற்றிய சுழற்சி கோணத்தை அளவு குறிப்பிடுகிறது. உதாரணமாக:
import math import np from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(1) theta = math.pi / 5 phi = math.pi / 3 # RGate axis: axis = np.array([math.cos(phi), math.sin(phi)]) rotation_vector = theta * axis qc.rv(*rotation_vector, 0)
கட்டுப்படாத :class:'~qiskit.circuit.Parameter' ஒரு :class:'~qiskit.circuit.QuantumCircuit' பொருள் இப்போது பெயரால் வரிசைப்படுத்தப்படும். இது :attr:'~qiskit.circuit.QuantumCircuit.parameters' பண்புமூலம் திருப்பியருக்களுக்கு நடைமுறைக்கு வரும். கூடுதலாக, :meth:'qiskit.circuit.QuantumCircuit.bind_parameters' மற்றும் :meth:'qiskit.circuit.QuantumCircuit.assign_parameters' முறைகள் இப்போது ஒரு மதிப்புகளின் பட்டியலை எடுக்கலாம், இது பெயர் வரிசைப்படுத்தப்பட்ட வரிசையில் அளவுருக்களுடன் அவற்றை இணைக்கும் / ஒதுக்கும். முன்பு இந்த முறைகள் அளவுருக்கள் மற்றும் மதிப்புகளின் அகராதியை மட்டுமே எடுக்கும். உதாரணமாக:
from qiskit.circuit import QuantumCircuit, Parameter circuit = QuantumCircuit(1) circuit.rx(Parameter('x'), 0) circuit.ry(Parameter('y'), 0) print(circuit.parameters) bound = circuit.bind_parameters([1, 2]) bound.draw(output='mpl')
ParameterView([Parameter(x), Parameter(y)])
The constructors for the
qiskit.quantum_info.Statevectorandqiskit.quantum_info.DensityMatrixclasses can now take aQuantumCircuitobject in to build aStatevectorandDensityMatrixobject from that circuit, assuming that the qubits are initialized in \(|0\rangle\). For example:from qiskit import QuantumCircuit from qiskit.quantum_info import Statevector qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) statevector = Statevector(qc) statevector.draw(output='latex')
\[\begin{split}\begin{bmatrix} \tfrac{1}{\sqrt{2}} & 0 & 0 & \tfrac{1}{\sqrt{2}} \\ \end{bmatrix} \end{split}\]புதிய போலி பின்தளத்தில் வகுப்புகள் `` qiskit.test.mock`` இன் கீழ் கிடைக்கின்றன. `` Ibmq_casablanca``, `` ibmq_sydney``, `` ibmq_mumbai``, `` ibmq_lima``, `` ibmq_belem``, `` ibmq_quito`` ஆகியவற்றின் கேலி செய்யப்பட்ட பதிப்புகள் இதில் அடங்கும். மற்ற போலி பின்தளத்தில் உள்ளதைப் போலவே, அளவீட்டுத் தரவின் ஸ்னாப்ஷாட்களும் (அதாவது
backend.defaults()) மற்றும் பிழை தரவு (அதாவது `` backend.properties()``) உண்மையான அமைப்பிலிருந்து எடுக்கப்பட்டவை, அவற்றைப் பயன்படுத்தலாம் உள்ளூர் சோதனை, தொகுப்பு மற்றும் உருவகப்படுத்துதலுக்காக.
தெரிந்த சிக்கல்கள்¶
ஒரு :class:'qiskit.pulse.Instruction' பொருளை அளவுருக்கள் கொண்ட 'கால அளவு' (அதாவது 'காலஅளவு' மதிப்பு ஒரு எல்லையற்றது :class:'~qiskit.circuit.Parameter'. அல்லது :class: ~ qiskit.circuit.ParameterExpression' பொருள்) ஒரு :class:'qiskit.pulse.Schedule' ஆதரிக்கப்படவில்லை. அவ்வாறு செய்ய முயற்சிப்பது 'ஒதுக்கப்படாதகாலபிழை':class:'~qiskit.pulse.PulseError' எழுப்பப்படும். இது :class:'~qiskit.pulse.Instruction' மேல்கவிழ்ப்பு கட்டுப்பாடுகள் தற்போது எவ்வாறு மதிப்பிடப்படுகின்றன என்பதற்கான வரம்பு ஆகும். இதை ஆதரிக்கிறது:class:'~qiskit.pulse.ScheduleBlock', இதில் மேல்கவிழ்ப்பு கட்டுப்பாடுகள் மரணதண்டனைக்கு சற்று முன்பு மதிப்பிடப்படுகின்றன.
இணை செயலாக்கம் செயல்படுத்தப்படும் போது விண்டோஸ் அமைப்புகளில் :func:'~qiskit.tools.parallel_map' இணைவாதம் ஒரு ஸ்கிரிப்ட் வெளியே இயங்கும் போது வேலை செய்யாது "__name__ என்றால் =="__main__":'' தொகுதி. இது பைத்தான் விண்டோஸ் இணை செயல்முறைகள் தொடங்குகிறது எப்படி காரணமாக உள்ளது. 'RuntimeError' அல்லது 'AttributeError' என்று அழைக்கும் ஸ்கிரிப்ட்களால் எழுப்பப்பட்டால் :func:'~qiskit.tools.parallel_map' ('parallel_map()' போன்ற உள்செயல்பாடுகளைப் பயன்படுத்துவது உட்பட :func:'~qiskit.compiler.transpile') விண்டோஸ் மற்றும் இணைத்தன்மையுடன் '__name__ == '__main__':' என்ற ஸ்கிரிப்ட் அழைப்புகளை உள்ளே உட்பொதிக்க முயற்சிக்கலாம். உதாரணமாக:
from qiskit import QuantumCircuit, QiskitError from qiskit import execute, Aer qc1 = QuantumCircuit(2, 2) qc1.h(0) qc1.cx(0, 1) qc1.measure([0,1], [0,1]) # making another circuit: superpositions qc2 = QuantumCircuit(2, 2) qc2.h([0,1]) qc2.measure([0,1], [0,1]) execute([qc1, qc2], Aer.get_backend('qasm_simulator'))
:: க்கு மாற்றப்பட வேண்டும்:
from qiskit import QuantumCircuit, QiskitError from qiskit import execute, Aer def main(): qc1 = QuantumCircuit(2, 2) qc1.h(0) qc1.cx(0, 1) qc1.measure([0,1], [0,1]) # making another circuit: superpositions qc2 = QuantumCircuit(2, 2) qc2.h([0,1]) qc2.measure([0,1], [0,1]) execute([qc1, qc2], Aer.get_backend('qasm_simulator')) if __name__ == '__main__': main()
if any errors are encountered with parallelism on Windows.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
முன்னமைக்கப்பட்ட பாஸ் மேலாளர்கள்: வகுப்பு: கிஸ்கிட். டிரான்ஸ்பைலர். முன்னமைக்கப்பட்ட _ பாஸ்மேனேஜர்கள். நிலை _ 1 _ பாஸ் _மேனேஜர் ,: வகுப்பு: ~ கிஸ்கிட். டிரான்ஸ்பைலர். முன்னமைக்கப்பட்ட _ பாஸ்மேனேஜர்கள் .லெவல்_2_பாஸ்_ மேலாளர், மற்றும்: வகுப்பு: ~ கிஸ்கிட். டிரான்ஸ்பைலர். முன்னமைக்கப்பட்ட _ பாஸ்மேனேஜர்கள். நிலை _3_ பாஸ் _ மேலாளர் (இவை `` உகப்பாக்கம்_அளவு`` 1, 2, மற்றும் 3 இல் பயன்படுத்தப்படுகின்றன: func: ` கிஸ்கிட். கம்பைலர். டிரான்ஸ்பைல்` மற்றும்: ஃபங்க்:` ~ கிஸ்கிட். எக்ஸிகியூட்_ஃபங்க்ஷன். நிபந்தனையின்றி பயன்படுத்தவும்: வர்க்கம்: ~ கிஸ்கிட். டிரான்ஸ்பைலர். சீட்டுகள். 1 குவிட் கேட் தேர்வுமுறைக்கு ஆப்டிமைஸ் 1 கே கேட்ஸ் டெகம்போசிஷன் பாஸ். முன்னதாக, இந்த பாஸ் மேலாளர்கள்: வகுப்பு: ~ கிஸ்கிட் ஐப் பயன்படுத்துவார்கள். டிரான்ஸ்பைலர். சீட்டுகள். அடிப்படை வாயில்களில் ` u1``, `` u2``, அல்லது `` u3`` இருந்தால் 1q கேட்ஸ் பாஸை மேம்படுத்தவும். நீங்கள் இன்னும் பழையதைப் பயன்படுத்த விரும்பினால்: வகுப்பு: ~ கிஸ்கிட். டிரான்ஸ்பைலர். சீட்டுகள். ஆப்டிமைஸ் 1 கே கேட்ஸ் நீங்கள் தனிப்பயன்: வகுப்பு: கிஸ்கிட் கட்டமைக்க வேண்டும். டிரான்ஸ்பைலர். பாஸ்மேனேஜர் பாஸுடன்.
அளவுருக்கள் மாற்றப்பட்டதைத் தொடர்ந்து :class:'~qiskit.circuit.QuantumCircuit', :attr:'~qiskit.circuit.QuantumCircuit.global_phase' வெளியீடு சுற்று பண்பு இனி எளிமைப்படுத்தப்பட்ட வடிவத்தில் திரும்ப முடியாது, உலகளாவிய கட்டம் ஒரு :class:'~qiskit.circuit.ParameterExpression'.
உதாரணத்திற்கு:
qc = QuantumCircuit(1) theta = Parameter('theta') qc.rz(theta, 0) qc.rz(-theta, 0) print(transpile(qc, basis_gates=['p']).global_phase)
முன்பு '0' என்று திரும்பி வந்தது, ஆனால் இப்போது '-0.5*திட்டா + 0.5*திட்டா' என்று திரும்பும் . அடையாள வெளிப்பாடுகளை எளிமைப்படுத்துவது மிகவும் மெதுவாக இருக்கும் என்பதால், ஒரு பெரிய ரன்டைம் செயல்திறன் அபராதத்தை தவிர்ப்பதற்கு இந்த மாற்றம் அவசியமாக இருந்தது, குறிப்பாக பல இருந்தால்:class:'~qiskit.circuit.ParameterExpression' பொருட்கள் ஒரு சுற்றில் உள்ளன.
The
BasicAerJobjob objects returned from BasicAer backends are now synchronous instances ofJobV1. This means that calls to therun()will block until the simulation finishes executing. If you want to restore the previous async behavior you'll need to wrap therun()with something that will run in a seperate thread or process likefutures.ThreadPoolExecutororfutures.ProcessPoolExecutor.BasicAer சிமுலேட்டருக்கான
allow_sample_measuringவிருப்பம் :class: ~ qiskit.providers.basicaer.QasmSimulatorPy என்பதுFalseஇன் இயல்புநிலையிலிருந்துTrueஎன மாறிவிட்டது. சிமுலேட்டரின் உண்மையான இயல்புநிலை நடத்தையை சிறப்பாக பிரதிபலிக்க இது செய்யப்பட்டது, இது உள்ளீட்டு சுற்று அதை ஆதரித்தால் மாதிரி அளவீட்டைப் பயன்படுத்தும் (இது இயக்கப்படாவிட்டாலும் கூட). மாதிரி அளவீட்டை ஆதரிக்காத ஒரு சுற்றுவட்டத்தை நீங்கள் இயக்குகிறீர்கள் என்றால் (அதாவது இது :class: ~ qiskit.circuit.Reset செயல்பாடுகள் அல்லது ஒரு குவிட்டில் ஒரு அளவீட்டுக்குப் பிறகு செயல்பாடுகள் இருந்தால்) இந்த விருப்பத்தை வெளிப்படையாக அமைப்பதை உறுதி செய்ய வேண்டும் நீங்கள் அழைக்கும் போதுFalseக்கு :meth: ~ qiskit.providers.basicaer.QasmSimulatorPy.run.The
CommutativeCancellationtranspiler pass is now aware of the target basis gates, which means it will only use gates in the specified basis. Previously, the pass would unconditionally replace consecutive gates which commute withZGatewith theU1Gate. However, now that the pass is basis aware and has a kwarg,basis_gates, for specifying the target basis there is a potential change in behavior if the kwarg is not set. When thebasis_gateskwarg is not used and there are no variable z-rotation gates in the circuit then no commutative cancellation will occur.Register(which is the parent class forQuantumRegisterandClassicalRegisterandBit(which is the parent class forQubitandClbit) objects are now immutable. In previous releases it was possible to adjust the value of asizeornameattributes of aRegisterobject and theindexorregisterattributes of aBitobject after it was initially created. However this would lead to unsound behavior that would corrupt container structure that rely on a hash (such as a dict) since these attributes are treated as immutable properties of a register or bit (see #4705 for more details). To avoid this unsound behavior this attributes of aRegisterandBitare no longer settable after initial creation. If you were previously adjusting the objects at runtime you will now need to create a newRegisterorBitobject with the new values.`` DAGCircuit.__eq__`` முறை (இது `` == `` ஆபரேட்டரால் பயன்படுத்தப்படுகிறது), இது கட்டமைப்பு சமத்துவத்தை சரிபார்க்கப் பயன்படுகிறது :class: ~ qiskit.dagcircuit.DAGCircuit மற்றும் :class:` q qiskit .circuit.QuantumCircuit` நிகழ்வுகளில், இப்போது :attr: ~ qiskit.circuit.QuantumCircuit.global_phase மற்றும் :attr:` ~ qiskit.circuit.QuantumCircuit.calibrations` பண்புகளை சமத்துவத்திற்காக சரிபார்க்கும். இதன் பொருள், `` global_phase`` அல்லது
calibrationsசுற்றுகளுக்கு இடையில் வேறுபடுகிறதென்றால், முந்தைய வெளியீடுகளில் சமமாக மதிப்பிடப்பட்ட சுற்றுகள் இனி இருக்காது. எடுத்துக்காட்டாக, முந்தைய வெளியீடுகளில் இதுTrueimport math from qiskit import QuantumCircuit qc1 = QuantumCircuit(1) qc1.x(0) qc2 = QuantumCircuit(1, global_phase=math.pi) qc2.x(0) print(qc2 == qc1)
இருப்பினும், இப்போது சுற்றுகளின் `` global_phase`` பண்பு வேறுபடுவதால் இது இப்போது `` False`` தரும்.
0.15.0 டெர்ரா வெளியீட்டில் நீக்கப்பட்ட:class: ~ qiskit.dagcircuit.DAGCircuit வகுப்பு, முன்னர் நீக்கப்பட்ட``qubits()` மற்றும் ``clbits() முறைகள் நீக்கப்பட்டன. அதற்கு பதிலாக நீங்கள் :attr: `~ qiskit.dagcircuit.DAGCircuit.qubits மற்றும் :attr:` ~ qiskit.dagcircuit.DAGCircuit.clbits` இன் பண்புக்கூறுகள் :class: ~ qiskit.dagcircuit.DAGCircuit வகுப்பைப் பயன்படுத்த வேண்டும். உதாரணமாக, நீங்கள் இயங்கினால்
from qiskit.dagcircuit import DAGCircuit dag = DAGCircuit() qubits = dag.qubits()
அது மாற்றப்படும்:
from qiskit.dagcircuit import DAGCircuit dag = DAGCircuit() qubits = dag.qubits
The
PulseDefaultsreturned by the fake pulse backendsqiskit.test.mock.FakeOpenPulse2Qandqiskit.test.mock.FakeOpenPulse3Qhave been updated to have more realistic pulse sequence definitions. If you are using these fake backend classes you may need to update your usage because of these changes.இயல்புநிலை தொகுப்பு முறை :func: ~ qiskit.quantum_info.decompose_clifford இன் செயல்பாடு :mod:` ~ qiskit.quantum_info` தொகுதி (இது உள்நாட்டில் பயன்படுத்தப்படுகிறது :meth: qiskit.quantum_info.Clifford.to_circuit முறை ) 3 க்கும் மேற்பட்ட வினாடிகளுக்கு இப்போது பிராவி எட் எழுதிய கிளிஃபோர்ட் கூறுகளின் தொகுப்புக்கான உகந்த பேராசை இல்லாத தொகுப்பு வழக்கத்தைப் பயன்படுத்துகிறது. அல்., இது பழைய இயல்புநிலையுடன் ஒப்பிடும்போது சிறந்த சிஎக்ஸ் செலவை அளிக்கிறது. முந்தைய ஆரோன்சன்-கோட்டெஸ்மேன் முறைக்கு நீங்கள் திரும்ப வேண்டுமானால், `` method='AG'`` அமைப்பதன் மூலம் இதைச் செய்யலாம்.
0.15.0 வெளியீட்டில் நீக்கப்பட்ட முன்னர் நீக்கப்பட்ட தொகுதி `` qiskit.visualization.interactive`` இப்போது அகற்றப்பட்டது. அதற்கு பதிலாக நீங்கள் matplotlib அடிப்படையிலான காட்சிப்படுத்தல்களைப் பயன்படுத்த வேண்டும்:
நீக்கப்பட்ட உரையாடும் செயல்பாடு
சமமான மேட்லோட்லிப் செயல்பாடு
iplot_bloch_multivectoriplot_state_cityiplot_state_qsphereiplot_state_hintoniplot_histogramiplot_state_paulivec`` Qiskit.Aer`` மற்றும் `` qiskit.IBMQ`` ஆகியவற்றின் உயர் மட்ட பண்புக்கூறுகள் இப்போது சோம்பேறியாக ஏற்றப்பட்டுள்ளன. இதன் பொருள், பொருள்கள் எப்போதுமே எப்போதும் இருக்கும், மேலும்
qiskit-aerஅல்லது `` qiskit-ibmq-provider`` நிறுவப்படாவிட்டால் (அல்லது பைத்தானால் கண்டுபிடிக்க முடியாது) எச்சரிக்கைகள் இனி இறக்குமதி செய்யப்படாது. இந்த தொகுதி பண்புகளைப் பயன்படுத்திqiskit-aerஅல்லதுqiskit-ibmq-providerஇருப்பதை நீங்கள் சோதித்துப் பார்த்தால்,Noneஎன்று வெளிப்படையாக ஒப்பிட்டுப் பார்த்தால் அல்லது பண்பு இல்லாததைத் தேடுகிறீர்கள் வேலை எப்போதும் அவை எப்போதும் ஒரு பொருளாக வரையறுக்கப்படுவதால். வேறு வார்த்தைகளில் கூறுவதானால்:try: from qiskit import Aer except ImportError: print("Aer not available") or:: try: from qiskit import IBMQ except ImportError: print("IBMQ not available")
இனி வேலை செய்யாது. அந்த வழங்குநர்கள் இருக்கிறார்களா என்பதைத் தீர்மானிக்க நீங்கள் வெளிப்படையாக `` qiskit.providers.aer.Aer`` மற்றும் `` qiskit.providers.ibmq.IBMQ``:: ஐப் பயன்படுத்தலாம்:
try: from qiskit.providers.aer import Aer except ImportError: print("Aer not available") try: from qiskit.providers.ibmq import IBMQ except ImportError: print("IBMQ not available")
அல்லது அதற்கு பதிலாக ``bool (qiskit.Aer) `` மற்றும் ``bool (qiskit.IBMQ) `` ஐச் சரிபார்க்கவும், எடுத்துக்காட்டாக:
import qiskit if not qiskit.Aer: print("Aer not available") if not qiskit.IBMQ: print("IBMQ not available")
Qiskit தொகுப்புகளுக்கிடையேயான இறக்குமதி சுழற்சி சிக்கல்களைத் தவிர்ப்பதற்கும், ஏர் அல்லது IBMQ பயன்படுத்தப்படாதபோது இறக்குமதி நேரத்தை மேம்படுத்துவதற்கும் இந்த மாற்றம் அவசியம்.
பயனர் உள்ளமைவு கோப்பில் பயனர் உள்ளமைவு கோப்பு விருப்பம்
suppress_packaging_warningsமற்றும் `` QISKIT_SUPPRESS_PACKAGING_WARNINGS`` சூழல் மாறி இனி எந்த விளைவையும் ஏற்படுத்தாது, அமைதியாக புறக்கணிக்கப்படும். கட்டுப்படுத்தப்பட்ட இந்த விருப்பம் எச்சரிக்கைகள் நீக்கப்பட்டன, மேலும்qiskitதொகுதியிலிருந்து இறக்குமதி நேரத்தில் வெளியிடப்படாது.இதற்கு முன்னர் நீக்கப்பட்ட
conditionகுவார்க் :class: qiskit.dagcircuit.DAGNode கட்டமைப்பாளர் அகற்றப்பட்டார். இது 0.15.0 வெளியீட்டில் நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் இப்போது கிளாசிக்கல் நிபந்தனையை அமைக்க வேண்டும்:class: ~ qiskit.circuit.Instruction பொருள்:class:` ~ qiskit.dagcircuit.DAGNode` கட்டமைப்பாளருக்கு ஒரு புதிய `` op`` முனையை உருவாக்கும்போது.புதிய: வகுப்பை உருவாக்கும் போது :class: ~ qiskit.circuit.Register (இது பெற்றோர் வகுப்பு:class:` ~ qiskit.circuit.QuantumRegister` மற்றும்:class: ~ qiskit.circuit.ClassicalRegister) அல்லது:class: ~ qiskit.circuit.QuantumCircuit பொருள் பல பிட்களுடன் (எ.கா.``QuantumCircuit(2)``), இப்போது பிட்களின் எண்ணிக்கை ஒரு முழு எண் அல்லது வேறு வகையாக குறிப்பிடப்பட வேண்டும், இது தெளிவற்ற முழு எண்களுக்கு (எ.கா. `` 2.0``). அந்த நிகழ்வுகளின் நோக்கம் தெளிவாக இல்லாததால் முழு எண் அல்லாத மதிப்புகள் இப்போது ஒரு பிழையை எழுப்புகின்றன (உங்களிடம் பகுதியளவு பிட்கள் இருக்க முடியாது). இது ஏன் மாற்றப்பட்டது என்பது குறித்த கூடுதல் தகவலுக்கு: # 4855 <https://github.com/Qiskit/qiskit-terra/issues/4855> __
networkx <https://networkx.org/> __ இனி கிஸ்கிட்-டெர்ராவிற்கு தேவையில்லை. Qiskit-டெர்ராவிற்குள் உள்ள அனைத்து நெட்வொர்க் பயன்பாடுகளும் 3 முறைகளைத் தவிர்த்து அகற்றப்பட்டுள்ளன:
இந்த முறைகளில் ஏதேனும் ஒன்றை நீங்கள் பயன்படுத்துகிறீர்கள் என்றால், தொடர்ந்து அவற்றைப் பயன்படுத்த உங்கள் சூழலில் நெட்வொர்க்ஸை கைமுறையாக நிறுவ வேண்டும்.
பைதான்> = 3.8 உடன் மேகோஸில் இயல்பாக:func: ~ qiskit.tools.parallel_map இனி பல செயல்முறைகளில் இயங்காது. இயல்புநிலை நடத்தை இருந்த முந்தைய வெளியீடுகளிலிருந்து இது ஒரு மாற்றம்:func: ~ qiskit.tools.parallel_map பல செயல்முறைகளைத் தொடங்கும். இந்த மாற்றம் செய்யப்பட்டது, ஏனெனில் பைதான் 3.8 மற்றும் 3.9 உடன் மாகோஸின் புதிய பதிப்புகள் நம்பமுடியாதவை அல்லது பைத்தான் 3.8 இன் மாற்றத்தின் காரணமாக குறிப்பிடத்தக்க மேல்நிலை சேர்க்கிறது, ஏனெனில் புதிய செயல்முறைகளை
forkக்கு பதிலாகspawnஉடன் தொடங்கலாம். பைத்தான்> = 3.8 உடன் மேகோஸில் இணையான செயல்பாட்டை மீண்டும் இயக்க நீங்கள் பயனர் கட்டமைப்பு கோப்புparallelவிருப்பத்தைப் பயன்படுத்தலாம் அல்லது சூழல் மாறி `` QISKIT_PARALLEL`` ஐTrueஎன அமைக்கலாம்.The previously deprecated kwarg
callbackon the constructor for thePassManagerclass has been removed. This kwarg has been deprecated since the 0.13.0 release (April, 9th 2020). Instead you can pass thecallbackkwarg to theqiskit.transpiler.PassManager.run()method directly. For example, if you were using:from qiskit.circuit.random import random_circuit from qiskit.transpiler import PassManager qc = random_circuit(2, 2) def callback(**kwargs) print(kwargs['pass_']) pm = PassManager(callback=callback) pm.run(qc)
இதை:: உடன் மாற்றலாம்
from qiskit.circuit.random import random_circuit from qiskit.transpiler import PassManager qc = random_circuit(2, 2) def callback(**kwargs) print(kwargs['pass_']) pm = PassManager() pm.run(qc, callback=callback)
It is now no longer possible to instantiate a base channel without a prefix, such as
qiskit.pulse.Channelorqiskit.pulse.PulseChannel. These classes are designed to classify types of different user facing channel classes, such asqiskit.pulse.DriveChannel, but do not have a definition as a target resource. If you were previously directly instantiating eitherqiskit.pulse.Channelorqiskit.pulse.PulseChannel, this is no longer allowed. Please use the appropriate subclass.`` Require_cp`` மற்றும் / அல்லது `` required_tp`` குவார்க்குகள் :func: qiskit.quantum_info.process_fidelity ,:func:` qiskit.quantum_info.average_gate_fidelity` ,:func: qiskit.gantum_info. ``True`, உள்ளீடு சேனல் முறையே சிபி அல்லாத அல்லது டிபி அல்லாததாக இருந்தால், அவை: வகுப்பை உயர்த்துவதற்கான முந்தைய நடத்தைக்கு பதிலாக ஒரு எச்சரிக்கையை மட்டுமே பதிவு செய்யும். :class:~ qiskit.exceptions.QiskitError விதிவிலக்கு.
qiskit.circuit.library.QFTவர்க்கம் :mod:` qiskit.circuit.library` தொகுதி இப்போது ஃபோரியர் உருமாற்றத்தை டென்சர்களின் சிறிய-எண்டியன் பிரதிநிதித்துவத்தைப் பயன்படுத்தி கணக்கிடுகிறது, அதாவது நிலை:math: |1rangle வரைபடங்கள்:math: |0rangle - |1rangle+|2rangle - .. கணக்கீட்டு அடிப்படையானது முழு எண்களின் சிறிய-எண்டியன் பிட் வரிசைக்கு ஒத்திருக்கிறது. :math: |0rangle=|000 rangle,|1rangle=|001rangle, முதலியன. இது கிஸ்கிட்டின் மற்ற பகுதிகளுடன் மிகவும் ஒத்துப்போகும் வகையில் செய்யப்பட்டது, இது ஒரு பிட்-எண்டியன் மாநாட்டைப் பயன்படுத்துகிறது ஆர்டர். முந்தைய பிட் வரிசையைப் பொறுத்து நீங்கள் இருந்தால்: முந்தைய நடத்தைக்கு மாற்ற:meth: q qiskit.circuit.library.QFT.reverse_bits முறையைப் பயன்படுத்தலாம். உதாரணத்திற்கு:from qiskit.circuit.library import QFT qft = QFT(5).reverse_bits()
qiskit.__qiskit_version__தொகுதி பண்புக்கூறு முன்பு ஒருdictஇப்போது தனிப்பயன் படிக்க-மட்டும்Mappingபொருளைத் தரும், இது இறக்குமதி நேரத்திற்கு பதிலாக இயக்க நேரத்தில் கிஸ்கிட் கூறுகளின் பதிப்பை சரிபார்க்கிறது. கிஸ்கிட்டின் இறக்குமதி பாதையை விரைவுபடுத்துவதற்கும், தொகுப்பிலிருந்து பதிப்பு தேவைப்பட்டால் இயக்க நேரத்தில் மட்டுமே உறுப்பு தொகுப்புகளை இறக்குமதி செய்வதன் மூலம் சாத்தியமான இறக்குமதி சுழற்சியை அகற்றுவதற்கும் இது செய்யப்பட்டது. இது முன்னர் திரும்பியdictஉடன் முழுமையாக ஒத்துப்போக வேண்டும், மேலும் சாதாரண பயன்பாட்டு நிகழ்வுகளில் எந்த வித்தியாசமும் இருக்காது. இருப்பினும், சில பயன்பாடுகள் உள்ளடக்கங்களை மாற்றுவதை நம்பியிருந்தால் அல்லது வெளிப்படையாக சரிபார்ப்பதை தட்டச்சு செய்தால், இந்த மாற்றத்திற்கு ஏற்ப புதுப்பிப்புகள் தேவைப்படலாம்.`` Qiskit.execute`` தொகுதிக்கு மறுபெயரிடப்பட்டுள்ளது :mod: qiskit.execute_function. :func: ~ qiskit.execute_function.execute செயல்பாட்டிற்கு இடையில் ஒரு சாத்தியமான பெயர் மோதலைத் தவிர்க்க இது அவசியம், இது` qiskit.execute` என மீண்டும் ஏற்றுமதி செய்யப்படுகிறது. `` qiskit.execute`` சில சூழ்நிலைகளில் உள்ள செயல்பாடு `` qiskit.execute`` உடன் முரண்படக்கூடும், இது ஒரு ரகசிய பிழைக்கு வழிவகுக்கும், ஏனெனில் பைதான் `` qiskit.execute`` ஐ தொகுதிக்கூறாகக் கருதுகிறது. செயல்பாடு அல்லது நேர்மாறாக. இந்த மோதலைத் தவிர்க்க தொகுதி மறுபெயரிடுதல் அவசியம். தொகுதியைப் பெற நீங்கள் `` qiskit.execute`` ஐ இறக்குமதி செய்கிறீர்கள் என்றால் (வழக்கமான பயன்பாடு qiskit.execute import execute`` என்பதிலிருந்து `` இருந்தது) அதற்கு பதிலாக `` qiskit.execute_function`` ஐப் பயன்படுத்த இதைப் புதுப்பிக்க வேண்டும். `` qiskit.execute`` இப்போது எப்போதும் செயல்பாட்டைத் தீர்க்கும்.
`` Qiskit.compiler.transpile``, `` qiskit.compiler.assemble``, `` qiskit.compiler.schedule``, மற்றும் `` qiskit.compiler.afterence`` தொகுதிகள்
qiskit. compiler.transpiler, `` qiskit.compiler.assembler``, `` qiskit.compiler.scheduler``மற்றும் `` qiskit.compiler.afterence``என மறுபெயரிடப்பட்டுள்ளன. தொகுதிகள் மற்றும் மறு ஏற்றுமதி செய்யப்பட்ட செயல்பாட்டு பாதைகளுக்கு இடையில் ஒரு சாத்தியமான பெயர் மோதலைத் தவிர்க்க இது அவசியம் :func: qiskit.compiler.transpile ,:func:` qiskit.compiler.assemble` ,:func: qiskit.compiler.schedule `, மற்றும் :func: qiskit.compiler.afterence`. சில சூழ்நிலைகளில், தொகுதி பாதை மற்றும் மறு ஏற்றுமதி செய்யப்பட்ட செயல்பாட்டு பாதைக்கு இடையிலான இந்த பெயர் மோதல் ஒரு ரகசிய பிழைக்கு வழிவகுக்கும், ஏனெனில் பைதான் ஒரு இறக்குமதியை ஒரு தொகுதியாக கருதுகிறது, ஏனெனில் செயல்பாடு அல்லது அதற்கு நேர்மாறாக பயன்படுத்த வேண்டும். இந்த மோதலைத் தவிர்க்க தொகுதி மறுபெயரிடுதல் அவசியம். இதற்கு முன்னர் தொகுதிக்கூறுகளைப் பெற நீங்கள் இறக்குமதியைப் பயன்படுத்தினால் (வழக்கமான பயன்பாடு `` qiskit.compiler.transpile இறக்குமதி டிரான்ஸ்பைல்`` போல இருக்கும்) புதிய தொகுதி பாதைகளைப் பயன்படுத்த இதை நீங்கள் புதுப்பிக்க வேண்டும். :func: qiskit.compiler.transpile ,:func:` qiskit.compiler.assemble` ,:func: qiskit.compiler.schedule, மற்றும் :func:` qiskit.compiler.afterence` இப்போது எப்போதும் தீர்க்கப்படும் செயல்பாடுகள்.The
qiskit.quantum_info.Quaternionclass was moved from theqiskit.quantum_info.operatorsubmodule to theqiskit.quantum_info.synthesissubmodule to better reflect it's purpose. No change is required if you were importing it from the rootqiskit.quantum_infomodule, but if you were importing fromqiskit.quantum_info.operatoryou will need to update your import path.ஏப்ரல் 2020 இல் qiskit டெர்ரா 0.14.0 வெளியீட்டில் இருந்து நீக்கப்பட்ட `` QuantumCircuit.mcmt`` முறையை நீக்கியது. முறையைப் பயன்படுத்துவதற்குப் பதிலாக, தயவுசெய்து :class: q qiskit.circuit.library.MCMT வகுப்பைப் பயன்படுத்தவும் அதற்கு பதிலாக பல கட்டுப்பாட்டு மல்டி-டார்கெட் கேட்டை உருவாக்கி, ஒரு சுற்றுக்குச் சேர்க்க, :meth: qiskit.circuit.QuantumCircuit.append அல்லது :meth:` qiskit.circuit.QuantumCircuit.compose` ஐப் பயன்படுத்தவும்.
உதாரணமாக, நீங்கள் மாற்றலாம்:
circuit.mcmt(ZGate(), [0, 1, 2], [3, 4])
உடன்:
from qiskit.circuit.library import MCMT mcmt = MCMT(ZGate(), 3, 2) circuit.compose(mcmt, range(5))
ஏப்ரல் 2020 இல் கிஸ்கிட் டெர்ரா 0.14.0 வெளியீட்டிலிருந்து நீக்கப்பட்ட `` QuantumCircuit.diag_gate`` முறையை நீக்கியது. அதற்கு பதிலாக, இதைப் பயன்படுத்தவும்:meth: ~qiskit.circuit.QuantumCircuit.diagonal முறை:class:` ~ qiskit.circuit.QuantumCircuit`.
ஏப்ரல் 2020 இல் கிஸ்கிட் டெர்ரா 0.14.0 வெளியீட்டிலிருந்து நீக்கப்பட்ட
QuantumCircuit.ucyமுறை நீக்கப்பட்டது. அதற்கு பதிலாக, இதைப் பயன்படுத்தவும்:meth: ~qiskit.circuit.QuantumCircuit.ucry இன் முறை:class:` ~ qiskit.circuit.QuantumCircuit`.இதற்கு முன்னர் நீக்கப்பட்ட
mirror() `` முறை:class: `qiskit.circuit.QuantumCircuit` அகற்றப்பட்டது. இது 0.15.0 வெளியீட்டில் நீக்கப்பட்டது. :meth: `qiskit.circuit.QuantumCircuit.reverse_ops` முறையைப் பயன்படுத்த வேண்டும், ஏனெனில் பிரதிபலிப்பு சுற்றுக்கான வெளியீட்டு வினைகளை மாற்றுவதில் குழப்பமடையக்கூடும். ``reverse_ops()முறை பிரதிபலிப்பதற்குப் பதிலாக பயன்படுத்தப்படும் வாயில்களின் வரிசையை மட்டுமே மாற்றியமைக்கிறது.ஒரு மிதவை கடந்து செல்வதற்கு முன்னர் நீக்கப்பட்ட ஆதரவு (
scaleகுவார்குக்கான முதல் நிலை வாதமாக:meth: qiskit.circuit.QuantumCircuit.draw அகற்றப்பட்டது. இது 0.12.0 வெளியீட்டில் நீக்கப்பட்டது. முதல் நிலை வாதம்:meth:qiskit.circuit.QuantumCircuit.draw முறை இப்போது``output`` குவார்க் ஆகும், இது ஒரு மிதவை ஏற்காது. அதற்கு பதிலாக நீங்கள்``scale`` என பெயரிடப்பட்ட குவார்க்காகப் பயன்படுத்த வேண்டும் அதை நிலை ரீதியாகப் பயன்படுத்துகிறது.எடுத்துக்காட்டாக, நீங்கள் முன்பு
drawஉடன் அழைத்திருந்தால்:from qiskit import QuantumCircuit qc = QuantumCircuit(2) qc.draw(0.75, output='mpl')
இது இப்போது இருக்க வேண்டும்:
from qiskit import QuantumCircuit qc = QuantumCircuit(2) qc.draw(output='mpl', scale=0.75)
அல்லது:
qc.draw('mpl', scale=0.75)
0.15.0 வெளியீட்டில் (ஆகஸ்ட், 2020) நீக்கப்பட்ட Qiskit பல்ஸ் (:mod: qiskit.pulse) இன் அம்சங்கள் அகற்றப்பட்டுள்ளன. மாற்றங்களின் முழு தொகுப்பு:
தொகுதி
பழைய
புதிய
qiskit.pulse.librarySamplePulseqiskit.pulse.libraryConstantPulse(தொகுதி மறுபெயரிடு)
pulse.pulse_libதொகுதிவகுப்பு
பழைய முறை
புதிய முறைகள்
ParametricPulseget_sample_pulseget_waveformcommandN/A. கட்டளைகளும் வழிமுறைகளும் ஒன்றிணைக்கப்பட்டுள்ளன. அறிவுறுத்தல் தரவைப் பற்றிய தகவல்களைப் பெற :meth: ~ qiskit.pulse.instructions.Instruction.operands ஐப் பயன்படுத்தவும்.
acquires,mem_slots,reg_slotsacquire(),mem_slot(),reg_slot(). (TheAcquireinstruction no longer broadcasts across multiple qubits.)முன்னர் வைத்திருந்த அகராதி :class: ~ qiskit.dagcircuit.DAGCircuit விளிம்புகள் அகற்றப்பட்டன. அதற்கு பதிலாக, விளிம்புகள் இப்போது: வர்க்கத்தை வைத்திருக்கின்றன :class: ~ qiskit.circuit.Bit உதாரணம் இதற்கு முன்னர் அகராதியில் அதன்` 'wire' புலமாக சேர்க்கப்பட்டிருந்தது. நெட்வொர்க்எக்ஸ் வரைபடம் வழங்கியதை நினைவில் கொள்க :meth: ~ qiskit.dagcircuit.DAGCircuit.to_networkx அதன் விளிம்பு பண்புகளுக்கு இன்னும் ஒரு அகராதியைக் கொண்டிருக்கும், ஆனால்` 'name' புலம் இனி மக்கள்தொகை பெறாது.
வர்க்கத்தின் :attr: ~ qiskit.circuit.QuantumCircuit.parameters பண்புக்கூறு :class:` ~ qiskit.circuit.QuantumCircuit` வகுப்பு இனி
setஐத் தரவில்லை. அதற்கு பதிலாக இதுParameterViewபொருளைத் தருகிறது, இது `` set`` சலுகைகள் (நீக்கப்பட்டிருந்தாலும்) அனைத்து முறைகளையும் செயல்படுத்துகிறது. பெயர் வரிசைப்படுத்தப்பட்ட அளவுருக்களைப் பாதுகாக்கும் மாதிரியை ஆதரிக்க இது செய்யப்பட்டது. ஒரு தொகுப்பின் வெளிப்படையான வகை சோதனை எங்கு செய்யப்பட்டது என்பதைத் தவிர :attr: ~ qiskit.circuit.QuantumCircuit.parameters பண்புக்கூறு வழங்கியsetஇன் முந்தைய பயன்பாட்டுடன் இது முழுமையாக ஒத்துப்போக வேண்டும்.இயங்கும் போது :func: ~ qiskit.compiler.transpile ஒரு :class:` ~ qiskit.circuit.QuantumCircuit` உடன்:meth: ~ qiskit.circuit.QuantumCircuit.delay அறிவுறுத்தல்கள், அலகுகள் dt ஆக மாற்றப்படும் dt (மாதிரி நேரம்) இன் மதிப்பு அறியப்படுகிறது :func: ~ qiskit.compiler.transpile, வெளிப்படையாக` dt` குவார்க் வழியாக அல்லது :class:` ~ qiskit.providers.models.BackendConfiguration` வழியாக
Backendபொருள் `` backend`` குவார்க் வழியாக சென்றது.meas_mapஇன் விளக்கம் (இது ஒரு வகுப்பின் பண்பு :class: ~ qiskit.providers.models.PulseBackendConfiguration பொருள் அல்லது அதனுடன் தொடர்புடையmeas_mapகுவார்க் :func:` ~ qiskit.compiler. அட்டவணை` ,:func: ~ qiskit.compiler.assemble ,:func:` ~ qiskit.compiler.afterence`, அல்லது :func: ~ qiskit.execute_function.execute செயல்பாடுகள்) உண்மையான தடைகளுடன் சிறப்பாக பொருந்தும் வகையில் புதுப்பிக்கப்பட்டுள்ளது. வன்பொருள். இந்தத் தரவின் வடிவம் பட்டியல்களின் பட்டியல், உள் பட்டியலில் உள்ள உருப்படிகள் குவிட் லேபிள்களைக் குறிப்பிடும் முழு எண்களாகும். உதாரணமாக[[A, B, C], [D, E, F, G]]
முன்னதாக,
meas_mapகட்டுப்பாடு ஒரு குவிட் வாங்கப்பட்டால் (எ.கா. ஏ), பின்னர் அந்த குவிட் (பி மற்றும் சி) உடன் ஒரு துணைக்குழுவைப் பகிர்ந்து கொள்ளும் மற்ற அனைத்து குவிட்களும் ஒரே நேரத்தில் பெறப்பட வேண்டும், அதே காலம். இந்த தடை தளர்த்தப்பட்டுள்ளது. ஒரு கையகப்படுத்துதலுக்கு அதிக கையகப்படுத்துதல் தேவையில்லை. (A ஐப் பெற்றால், B மற்றும் C செய்ய ** தேவையில்லை **.) அதற்கு பதிலாக, ஒரே அளவீட்டுக் குழுவில் உள்ள குவிட்களை ஓரளவு ஒன்றுடன் ஒன்று பெற முடியாது -meas_mapஐக் குறிப்பிடுவதை நினைத்துப் பாருங்கள் பகிரப்பட்ட கையகப்படுத்தல் வளம் (`t = 1000முதல்t = 2000வரை A ஐப் பெற்றால்,``1000 <t <2000`` முதல் B ஐப் பெற முடியாது). உதாரணத்திற்கு:# Good meas_map = [[0, 1]] # Acquire a subset of [0, 1] sched = pulse.Schedule() sched = sched.append(pulse.Acquire(10, acq_q0)) # Acquire 0 and 1 together (same start time, same duration) sched = pulse.Schedule() sched = sched.append(pulse.Acquire(10, acq_q0)) sched = sched.append(pulse.Acquire(10, acq_q1)) # Acquire 0 and 1 disjointly sched = pulse.Schedule() sched = sched.append(pulse.Acquire(10, acq_q0)) sched = sched.append(pulse.Acquire(10, acq_q1)) << 10 # Acquisitions overlap, but 0 and 1 aren't in the same measurement # grouping meas_map = [[0], [1]] sched = pulse.Schedule() sched = sched.append(pulse.Acquire(10, acq_q0)) sched = sched.append(pulse.Acquire(10, acq_q1)) << 1 # Bad: 0 and 1 are in the same grouping, but acquisitions # partially overlap meas_map = [[0, 1]] sched = pulse.Schedule() sched = sched.append(pulse.Acquire(10, acq_q0)) sched = sched.append(pulse.Acquire(10, acq_q1)) << 1
தேய்மான குறிப்புகள்¶
இரண்டு புதிய வாதங்கள் இதில் சேர்க்கப்பட்டுள்ளன:meth: qiskit.dagcircuit.DAGNode.semantic_eq,` bit_indices1` மற்றும்``bit_indices2``, இவை வரைபடத்தை எதிர்பார்க்கும்
Bitநிகழ்வுகள் ஒவ்வொன்றிலும் :class: q qiskit.dagcircuit.DAGNode அவர்களின் குறியீட்டுக்கு` qubits` அல்லது``clbits`` அந்தந்த பட்டியலில் :class:` ~ qiskit.dagcircuit.DAGCircuit`. தேய்மான காலத்தில், இந்த வாதங்கள் விருப்பமானவை, ** குறிப்பிடப்படாத போது ** ஒவ்வொன்றின்registerமற்றும் `` index`` பண்புகளின் அடிப்படையில் வரைபடங்கள் தானாகவே உருவாக்கப்படும் :class: `~ qiskit.circuit.Bit `உதாரணம். இருப்பினும், எதிர்கால வெளியீட்டில், அவை தேவைப்படும் வாதங்கள் மற்றும் மேப்பிங் பயனரால் வழங்கப்பட வேண்டும்.pulseபில்டர் செயல்பாடுகள்:qiskit.pulse.call_circuit()qiskit.pulse.call_schedule()
நீக்கப்பட்டன மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இந்த செயல்பாடுகள் ஒன்றிணைக்கப்படுகின்றன:py:func:qiskit.pulse.call, அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
qiskit.pulse.Scheduleமுறை:py:meth:` qiskit.pulse.Schedule.flatten` முறை நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள்:py:func:qiskit.pulse.transforms.flatten செயல்பாட்டைப் பயன்படுத்தலாம், இது ஒரே செயல்பாட்டைச் செய்யும்.The
assign_parameters()for the following classes:qiskit.pulse.library.Pulse,
அவற்றின் அனைத்து துணைப்பிரிவுகளும் இப்போது நீக்கப்பட்டன, மேலும் அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். இந்த செயல்பாடு உட்பட்டது: py: class: ~ qiskit.pulse.ScheduleBlock இது அளவுருவாக்கப்பட்ட துடிப்பு நிரல்களை உருவாக்குவதற்கான எதிர்கால திசையாகும்.
பின்வரும் மோதலுக்கான:attr: ~ qiskit.pulse.channels.Channel.parameters பண்புக்கூறு:
நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இந்த செயல்பாடு உட்பட்டது: py: class: ~ qiskit.pulse.ScheduleBlock இது அளவுருவாக்கப்பட்ட பல்ஸ் நிரல்களை உருவாக்குவதற்கான எதிர்கால திசையாகும்.
பைதான் 3.6 ஆதரவு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். ஆதரவு நீக்கப்படும் போது நீங்கள் பயன்படுத்தும் பைதான் பதிப்பை பைதான் 3.7 அல்லது அதற்கு மேல் மேம்படுத்த வேண்டும்.
இரண்டு:class: ~ qiskit.circuit.QuantumCircuit முறைகள் :meth:` ~ qiskit.circuit.QuantumCircuit.combine` மற்றும்:meth: ~ qiskit.circuit.QuantumCircuit.extend உடன் தொடர்புடைய பைதான் ஆபரேட்டர்கள்` + மற்றும் + = நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக :class: `~ qiskit.circuit.QuantumCircuit முறை :meth:` ~ qiskit.circuit.QuantumCircuit.compose` ஐப் பயன்படுத்த வேண்டும். பொருந்தக்கூடிய பதிவேடுகள் இல்லாத இரண்டு சுற்றுகளை உருவாக்குவதில் :meth: ~ qiskit.circuit.QuantumCircuit.compose முறை அதிக நெகிழ்வுத்தன்மையை அனுமதிக்கிறது. இருப்பினும், நீக்கப்பட்ட முறைகளைப் போலல்லாமல் இது தானாகவே குவிட்ஸ் / கிளிப்பிட்களை சேர்க்காது. புதிய குவிட்ஸ் / கிளிப்பிட்களில் ஒரு சுற்று சேர்க்க,:meth: qiskit.circuit.QuantumCircuit.tensor முறையைப் பயன்படுத்தலாம். உதாரணத்திற்கு:
from qiskit.circuit import QuantumRegister, QuantumCircuit a = QuantumRegister(2, 'a') circuit_a = QuantumCircuit(a) circuit_a.cx(0, 1) b = QuantumRegister(2, 'b') circuit_b = QuantumCircuit(b) circuit_b.cz(0, 1) # same as circuit_a + circuit_b (or combine) added_with_different_regs = circuit_b.tensor(circuit_a) # same as circuit_a + circuit_a (or combine) added_with_same_regs = circuit_a.compose(circuit_a) # same as circuit_a += circuit_b (or extend) circuit_a = circuit_b.tensor(circuit_a) # same as circuit_a += circuit_a (or extend) circuit_a.compose(circuit_a, inplace=True)
தேர்ச்சிக்கான ஆதரவு :class: q qiskit.circuit.Qubit இன்` க்விட்ஸ்` குவார்க்கின் :meth:` qiskit.transpiler.InstructionDurations.get` முறை நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக, நீங்கள் விரும்பிய மெத்தைகளை :meth: qiskit.transpiler.InstructionDurations.get முறையை விரும்பிய குவிட்களின் முழு குறியீடுகளுடன் அழைக்க வேண்டும்.
BaseOperatorதுணைப்பிரிவுகளின் (egOperator)composeமுறையைத் தொடங்க@(__matmul__) ஐப் பயன்படுத்துதல் நீக்கப்பட்டது, மேலும் அவை அகற்றப்படும் எதிர்கால வெளியீடு.qiskit.quantum_info.Operator.compose()முறையை நேரடியாகப் பயன்படுத்தலாம் அல்லது``&``(__and__) ஆபரேட்டரைப் பயன்படுத்தி பயன்படுத்தலாம்.அழைப்பதற்கு `` * `` (
__mul__) ஐப் பயன்படுத்துதல் :meth: ~ qiskit.quantum_info.Operator.dot ``BaseOperator` துணைப்பிரிவுகளின் முறை (எ.கா :class:` qiskit.quantum_info.Operator`) நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக :meth: ~ qiskit.quantum_info.Operator.dot ஐ நேரடியாக அழைக்கலாம்.` @ ( __matmul__`) ஐப் பயன்படுத்துத் தொடங்கப்படும்
qiskit.quantum_info.Statevector மற்றும் :class:`qiskit.quantum_info.DensityMatrixவகுப்புகளின் முறைevolve()நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும் ..evolveமுறையை நேரடியாகப் பயன்படுத்தலாம் அல்லது&(__and__) ஆபரேட்டரைப் பயன்படுத்தி பயன்படுத்தலாம்.`` Qiskit.pulse.schedule.ParameterizedSchedule`` வகுப்பு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் துடிப்பு :class: ~ qiskit.pulse.Schedule பொருள்களை ஒரு :class:` ~ qiskit.circuit.Parameter` பொருளுடன் நேரடியாக அளவுருவாக்கலாம், எடுத்துக்காட்டாக:
from qiskit.circuit import Parameter from qiskit.pulse import Schedule from qiskit.pulse import ShiftPhase, DriveChannel theta = Parameter('theta') target_schedule = Schedule() target_schedule.insert(0, ShiftPhase(theta, DriveChannel(0)), inplace=True)
The
qiskit.pulse.ScheduleComponentclass in theqiskit.pulsemodule has been deprecated and will be removed in a future release. Its usage should be replaced either using aqiskit.pulse.Scheduleorqiskit.pulse.Instructiondirectly. Additionally, the primary purpose of theScheduleComponentclass was as a common base class for bothScheduleandInstructionfor any place that was explicitly type checking or documenting accepting aScheduleComponentinput should be updated to acceptInstructionorSchedule.JSON ஸ்கீமா கோப்புகள் மற்றும் IBMQ API பேலோடுகளுக்கான பயன்பாடு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இதில் :mod: qiskit.schemas தொகுதி மற்றும் :mod:` qiskit.validation` தொகுதி ஆகியவற்றின் கீழ் உள்ள அனைத்தும் அடங்கும். :meth: qiskit.qobj.QasmQobj.to_dict மற்றும் :meth:` qiskit.qobj.QasmQobj.to_dict` ஆகியவற்றுக்கான
validateகுவார்க்குகளும் இதில் அடங்கும் :mod: qiskit. qobj (இது ஒரு நீக்குதல் எச்சரிக்கையை எழுப்பாது). ஸ்கீமா கோப்புகள் Qiskit / ibmq-schemas <https://github.com/Qiskit/ibmq-schemas> __ களஞ்சியத்திற்கு நகர்த்தப்பட்டுள்ளன, அவை API திட்டங்களின் நியமன பதிப்புகளாக கருதப்பட வேண்டும். அந்தத் திட்டங்களை மட்டுமே முன்னோக்கி நகர்த்துவது புதுப்பிப்புகளைப் பெறும் மற்றும் திட்டங்களுக்கான உண்மையின் ஆதாரமாகப் பயன்படுத்தப்படும். கிஸ்கிட்-டெர்ராவில் தொகுக்கப்பட்ட திட்டங்களை நீங்கள் நம்பியிருந்தால், அதற்கு பதிலாக அந்த களஞ்சியத்தைப் பயன்படுத்த புதுப்பிக்க வேண்டும்.The
qiskit.utilmodule has been deprecated and will be removed in a future release. It has been replaced byqiskit.utilswhich provides the same functionality and will be expanded in the future. Note that noDeprecationWarningwill be emitted regarding this deprecation since it was not feasible on Python 3.6.The
CXDirectiontranspiler pass in theqiskit.transpiler.passesmodule has been deprecated and will be removed in a future release. Instead theGateDirectionshould be used. It behaves identically to theCXDirectionexcept that it now also supports transforming a circuit withECRGategates in addition toCXGategates.The
CheckCXDirectiontranspiler pass in theqiskit.transpiler.passesmodule has been deprecated and will be removed in a future release. Instead theCheckGateDirectionpass should be used. It behaves identically to theCheckCXDirectionexcept that it now also supports checking the direction of all 2-qubit gates, not justCXGategates.The
WeightedAddermethodnum_ancilla_qubits()is deprecated and will be removed in a future release. It has been replaced with theqiskit.circuit.library.WeightedAdder.num_ancillasattribute which is consistent with other circuit libraries' APIs.qiskit.quantum_info.Pauliவகுப்பின் பின்வரும் மரபு முறைகள் நீக்கப்பட்டன. புதுப்பிக்கப்பட்ட பவுலி வகுப்பில் மாற்று பயன்பாட்டிற்கான முறை ஆவணங்களைக் காண்க.listஅல்லதுnumpy.ndarrayஐchannelஅல்லதுtargetவாதமாகப் பயன்படுத்துதல் :func: qiskit.quantum_info.process_fidelity ,:func:` qiskit.quantum_info. average_gate_fidelity` ,:func: qiskit.quantum_info.gate_error, மற்றும் :func:` qiskit.quantum_info.diamond_norm` செயல்பாடுகள் நீக்கப்பட்டன, எதிர்கால வெளியீட்டில் ஆதரிக்கப்படாது. உள்ளீடுகள் அதற்கு பதிலாக ஒரு :class: ~ qiskit.circuit.Gate அல்லது` BaseOperator` துணைப்பிரிவு பொருள் (எ.கா. :class:` ~ qiskit.quantum_info.Operator` ,:class: ~ qiskit.quantum_info.Choi, முதலியன)குறிப்புகளை அணுகல் :class: ~ qiskit.circuit.Qubit மற்றும் :class:` ~ qiskit.circuit.Clbit` நிகழ்வுகள் அவற்றின் பதிவேடுகளுக்கு :attr: q qiskit.circuit.Qubit.register அல்லது :attr: ~ qiskit.circuit.Qubit.index பண்புகள் நீக்கப்பட்டன, மேலும் அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக ,:class: ~ qiskit.circuit.Register பொருள்களைக் கண்டுபிடிக்க வினவலாம் :class:` ~ qiskit.circuit.Bit` பொருள்கள் அவற்றில் உள்ளன.
எதிர்கால வெளியீட்டில் :func: qiskit.visualization.pulse_drawer செயல்பாட்டின் தற்போதைய செயல்பாடு நீக்கப்பட்டது மற்றும் மாற்றப்படும் :func:` qiskit.visualization.pulse_drawer_v2` (இது பின்னோக்கி பொருந்தாது).
setவகையிலிருந்து மரபுரிமையாகப் பெறப்பட்ட முறைகளின் பயன்பாடு வெளியீட்டின்parametersபண்புக்கூறு (இது ஒரு 'தொகுப்பாக' இருந்தது)QuantumCircuitவகுப்பு மதிப்பிழந்து, எதிர்கால வெளியீட்டில் அகற்றப்படும். இதில்add(),difference(),difference_update(),discard(),intersection(),intersection_update(),issubset(),issuperset(),symmetric_difference(),symmetric_difference_update(),union(),update(),__isub__()(which is the-=operator), மற்றும்__ixor__()(which is the^=operator) இந்த முறைகள் அடங்கும்.இதற்கான முதல் (மற்றும் ஒரே) நிலை வாதத்தின் பெயர் :meth: qiskit.circuit.QuantumCircuit.bind_parameters முறை
value_dictஇலிருந்துvaluesஎன மாற்றப்பட்டுள்ளது. `` values_dict`` என்ற பெயருடன் ஒரு வாதத்தை அனுப்புவது நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். எடுத்துக்காட்டாக, நீங்கள் முன்பு அழைத்திருந்தால் :meth: ~ qiskit.circuit.QuantumCircuit.bind_parameters போன்ற அழைப்போடு:bind_parameters (values_dict = {})இது நீக்கப்பட்டது மற்றும் மாற்றப்பட வேண்டும்bind_parameters (values) = {}) `` அல்லது இன்னும் சிறப்பாக வாதத்தை நிலைநிறுத்தினால் ``bind_parameters({}).இதற்கான முதல் (மற்றும் ஒரே) நிலை வாதத்தின் பெயர் :meth: qiskit.circuit.QuantumCircuit.assign_parameters முறை
param_dictஇலிருந்துparametersஎன மாற்றப்பட்டுள்ளது.param_dictஎன்ற பெயருடன் ஒரு வாதத்தை அனுப்புவது நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். எடுத்துக்காட்டாக, நீங்கள் முன்பு அழைத்திருந்தால் :meth: ~ qiskit.circuit.QuantumCircuit.assign_parameters போன்ற அழைப்போடு:` ஒதுக்கு_பராமீட்டர்கள் (param_dict = {})` இது நீக்கப்பட்டது மற்றும் மாற்றப்பட வேண்டும்assign_parameters(values={}) `` அல்லது இன்னும் சிறப்பாக வாதத்தை நிலைநிறுத்துங்கள் ``assign_parameters({}).
பிழை திருத்தங்கள்¶
Fixed an issue where the
execute()function would raiseQiskitErrorexception when aParameterVectorobject was passed in for theparameter_bindkwarg. parameter. For example, it is now possible to call something like:execute(circuit, backend, parameter_binds=[{pv1: [...], pv2: [...]}])
எங்கே `` pv1`` மற்றும் `` pv2`` ஆகியவை :class: ~ qiskit.circuit.ParameterVector பொருள்கள். நிலையான # 5467 <https://github.com/Qiskit/qiskit-terra/issues/5467> __
வகுப்பில் உள்ள அளவுரு பருப்புகளின் லேபிள்களில் ஒரு சிக்கல் சரி செய்யப்பட்டது :class: ~ qiskit.qobj.PulseQobjInstruction வகுப்பு மாதிரி பருப்புகளுடன் இருப்பதால் அவை சரியாக அமைக்கப்படவில்லை. வகுப்பிலிருந்து இறக்குமதி செய்யப்படும் துடிப்பு பெயர்கள்
PulseDefaultsஒரு: வகுப்பால் திருப்பி அனுப்பப்படுகிறது :class:` ~ qiskit.providers.Backend`, `` x90``, `` x90 மீ ``, போன்றவை சரியாக அமைக்கப்படும். நிலையான # 5363 <https://github.com/Qiskit/qiskit-terra/issues/5363> __வரம்பற்ற அளவுருக்கள் மட்டுமே நிகழும் ஒரு சிக்கல் சரி செய்யப்பட்டது :attr: ~ qiskit.circuit.QuantumCircuit.global_phase ஒரு: வகுப்பின் பண்புக்கூறு :class:` ~ qiskit.circuit.QuantumCircuit` பொருள் :attr: qiskit இல் காட்டாது. circ.QuantumCircuit.parameters பண்புக்கூறு மற்றும் கட்டுப்படுத்த முடியவில்லை. நிலையான # 5806 <https://github.com/Qiskit/qiskit-terra/issues/5806> __
+=(அதாவதுextend()முறை) மற்றும்+(அதாவதுcombine()முறை) பயன்படுத்தும்போதுcalibrationsபொருள்கள் இப்போது பாதுகாக்கப்படுகின்றன. நிலையான # 5930 <https://github.com/Qiskit/qiskit-terra/pull/5930> __ மற்றும் # 5908 <https://github.com/Qiskit/qiskit-terra/issues/5908> __The :attr:'~qiskit.circuit.Register.name' வகுப்பின் செட்டர் முறை :class: ~qiskit.circuit.Register` (இது பெற்றோர்வகுப்பு :class: '~qiskit.circuit.QuantumRegister` மற்றும்
இந்த சரிபார்ப்பு முன்பு மட்டுமே செய்யப்பட்டது கட்டமைப்பாளரில் பெயர் குறிப்பிடப்பட்டபோது,இது இப்போது சரி செய்யப்பட்டுள்ளது, இதனால் `பெயர்`` பண்புக்கூறு தவறான மதிப்புடன் நேரடியாக அமைப்பது இப்போது விதிவிலக்கையும் எழுப்புகிறது. சரி செய்யப்பட்டது `#5461<https://github.com/Qiskit/qiskit-terra/issues/5461>'__ஒரு சிக்கல் சரி செய்யப்பட்டது:func:qiskit.visualization.circuit_drawer செயல்பாடு மற்றும்:meth:qiskit.circuit.QuantumCircuit.draw காட்சிப்படுத்தும் முறை
QuantumCircuitஉடன் ஒரு:class:~qiskit.circuit.Gate அதற்குப் பிறகு ஒரு கிளாசிக்கல் நிலை உள்ளது:class:~qiskit.circuit.Measure அதே பயன்படுத்தப்பட்டது:class:~qiskit.circuit.ClassicalRegister,இது நிபந்தனைக்கு சாத்தியமானது:class:~qiskit.circuit.Gate`இடதுபுறத்தில் காட்டப்படும் :class:`~qiskit.circuit.Measure. சரி செய்யப்பட்டது`#5387<https://github.com/Qiskit/qiskit-terra/issues/5387>`__டிரான்ஸ்பைலர் பாஸில்:class:qiskit.transpiler.passes.CSPLayout`குறைந்த எண்ணிக்கையிலான குவிட்களை நோக்கிய ஒரு சார்பு காணப்படுகிறது. முடிவுகளை சீரற்றதாக்க வேட்பாளர்களை மாற்றுவதன் மூலம் இந்த விரும்பத்தகாத சார்பு சரி செய்யப்பட்டது. மேலும், பயன்பாடு:class:`~qiskit.transpiler.passes.CSPLayout கடந்து செல்லுங்கள்:mod:~qiskit.transpiler.preset_passmanagers`(நிலை 2 மற்றும் 3 க்கு) கட்டமைக்கப்பட்ட விதைகளைப் பயன்படுத்த சரிசெய்யப்பட்டால்``seed_transpiler``kwarg எப்போது அமைக்கப்படுகிறது:func:`~qiskit.compiler.transpile`என்று அழைக்கப்படுகிறது. சரி செய்யப்பட்டது`#5990
வகுப்பிற்கான `` சேனல்கள்`` புலம் :class: ~ qiskit.providers.models.PulseBackendConfiguration பொருள்: வகுப்பின் வெளியீட்டில் சேர்க்கப்படாத ஒரு பிழை :class:` qiskit.providers.models.PulseBackendConfiguration.to_dict` முறை. நிலையான # 5579 <https://github.com/Qiskit/qiskit-terra/issues/5579> __
சரி செய்யப்பட்டது ``'circular'`' சிக்கலில்:class:qiskit.circuit.library.NLocal விளிம்பு வழக்குக்கான சுற்று வகுப்பு, அங்கு சுற்றுக்கு சிக்கலான தொகுதி உள்ளது கேட்(எ.கா. இரண்டு-குவிட் சுற்று மற்றும் CZ சிக்கலான வாயில்கள்).இந்த வழக்கில் ஒரே ஒரு சிக்கல் வாயில் மட்டுமே இருக்க வேண்டும், ஆனால் தலைகீழ் திசையில் முதல் ஒன்றை தற்செயலாகச் சேர்த்தது.சரி செய்யப்பட்டது`Qiskit/qiskit-aqua#1452 <https://github.com/Qiskit/qiskit-aqua/issues/1452>`__
பிரேக் பாயிண்டுகளின் கையாளுதல் சரி செய்யப்பட்டது:class:~qiskit.circuit.library.PiecewisePolynomialPauliRotations.வகுப்பு:mod:qiskit.circuit.library.இப்போது
n``இடைவெளிகள்,'`n+1இடைவேளை புள்ளிகள் அனுமதிக்கப்படுகின்றன.இது தவிர வேறு இறுதி இடைவெளியைக் குறிப்பிட உதவுகிறது:math:`2^text{num qubits}'.இது முக்கியமானது, ஏனெனில் கடைசி இடைவெளியின் முடிவில் இருந்து:math:`2^text{num qubits}' செயல்பாடு என்பது அடையாளம்.இல் ஒரு சிக்கல் சரி செய்யப்பட்டது:class:qiskit.circuit.library.Permutation`சில வரிசைமாற்றங்கள் சரியாக உருவாக்கப்படாத சுற்று வகுப்பு. இந்த சிக்கலும் பாதிக்கப்படலாம்:class:`qiskit.circuit.library.QuantumVolume`அது அழைக்கப்பட்டால்`classical_permutation=False``நிர்ணயித்தல்`#5812
உருவாக்கும் இடத்தில் ஒரு சிக்கல் சரி செய்யப்பட்டதுQASMஉடன் வெளியீடு:meth:~qiskit.circuit.QuantumCircuit.qasm ஒரு முறை:class:~qiskit.circuit.QuantumCircuit ஒரு பொருள்:class:`~qiskit.circuit.ControlledGate`திறந்த கட்டுப்பாட்டுடன் வெளியீடு அனைத்து கட்டுப்பாடுகளும் குறிப்பிட்ட கட்டுப்பாட்டு நிலையிலிருந்து சுயாதீனமாக மூடப்பட்டிருக்கும். இதன் விளைவாக வேறுபட்ட சுற்று உருவாக்கப்படும்:meth:`~qiskit.circuit.QuantumCircuit.from_qasm_str`உருவாக்கப்பட்ட பாகுபடுத்தினால்QASM.
புதுப்பிப்பதன் மூலம் இது சரி செய்யப்பட்டது QASM வெளியீடு
qasm()பயன்படுத்தும் கலப்பு வாயிலை வரையறுப்பதன் மூலம்:class: ~qiskit.circuit.XGate திறந்த கட்டுப்பாடுகளை செயல்படுத்த. கலப்பு வாயில் போன்ற பெயர்<original_gate_name>_o<ctrl_state>`` எங்கேoதிறந்த கட்டுப்பாடு மற்றும்ctrl_stateஎன்பது கட்டுப்பாட்டு நிலையின் முழு மதிப்பு.நிர்ணயித்தல் #5443பிணைக்கும் இடத்தில் ஒரு சிக்கல் சரி செய்யப்பட்டது
nameஇதன் விளைவாக முடிவு பெயர்களும் தனித்துவமானவை அல்ல. இந்த பிழைத்திருத்தம் ஏற்படுகிறது :meth:`~qiskit.circuit.QuantumCircuit.bind_parameters`மற்றும் :meth:`~qiskit.circuit.QuantumCircuit.assign_parameters`ஒரு தனிப்பட்ட சுற்று பெயரை எப்போது ஒதுக்க``inplace=False``என<base name>-<class instance no.>[-<pid name>]
எங்கே``<base name>``வழங்கிய பெயர்"name"குவார்க், இல்லையெனில் அது இயல்புநிலையாக இருக்கும்"circuit".ஒவ்வொரு முறையும் வகுப்பின் ஒரு நிகழ்வு உருவாக்கப்படும் போது வகுப்பு நிகழ்வு எண் அதிகரிக்கும்.``<pid name>``முக்கிய செயல்முறைக்கு வெளியே அழைக்கப்பட்டால் சேர்க்கப்படும். சரி செய்யப்பட்டது`#5185 <https://github.com/Qiskit/qiskit-terra/issues/5185>`__
QuantumCircuit()object. பொருள் இருந்தால் அது விதிவிலக்கு அளிக்கும். # 5304 <https://github.com/Qiskit/qiskit-terra/issues/5304> சரி செய்யப்பட்டது __இல் ஒரு சிக்கல் சரி செய்யப்பட்டது
qiskit.transpiler.passes.TemplateOptimizationவரம்பற்ற அளவைக் கொண்ட வார்ப்புரு சுற்றுகள் இருக்கும் இடத்தில் டிரான்ஸ்பைலர் கடந்து செல்கிறதுParameterவார்ப்புரு பொருத்தத்தின் போது அளவுருக்களைக் கட்டுப்படுத்த முடியாவிட்டால் பொருள்கள் சில காட்சிகளின் கீழ் செயலிழக்கும். இப்போது, என்றால்TemplateOptimizationபாஸ். சரி செய்யப்பட்டது#5533 <https://github.com/Qiskit/qiskit-terra/issues/5533>`__கிளாசிக்கல் பிட்கள் முறையற்ற முறையில் கையாளப்பட்ட
qiskit.visualization.timeline_drawer()செயல்பாட்டின் சிக்கல் சரி செய்யப்பட்டது. #5361 <https://github.com/Qiskit/qiskit-terra/issues/5361> சரி செய்யப்பட்டதுqiskit.visualization.circuit_drawer()செயல்பாடு மற்றும்qiskit.circuit.QuantumCircuit.draw()இல் ஒரு சிக்கல் சரி செய்யப்பட்டது.Delayமுன்பு, விருப்பம் போது
layout_methodகுவார்க் வழங்கப்பட்டதுtranspile()செயல்பாடு மற்றும் optimization_level` kwarg என அமைக்கப்பட்டது >= 2 அதனால் பாஸ்:class:'qiskit.transpiler.passes.CSPLayout` இருந்தால், இயங்கும்:class:~qiskit.transpiler.passes.CSPLayout ஒரு தீர்வைக் கண்டுபிடித்தார்``layout_method`` செயல்படுத்தப்படவில்லை.இது சரி செய்யப்பட்டது, எனவே குறிப்பிடப்பட்டால், திlayout_methodஎப்போதும் கவுரவிக்கப்படுகிறது.நிர்ணயித்தல் `#5409<https://github.com/Qiskit/qiskit-terra/issues/5409>`__வாதம் போது``coupling_map=None``(வெளிப்படையாக அமைக்கவும், இயல்புநிலை மதிப்பாக மறைமுகமாக அமைக்கவும் அல்லது வழியாக``backend``குவார்க்), கடத்தும் செயல்முறை இல்லை"embedding"சர்க்குட். அதாவது, ஒரு போது கூட
initial_layoutகுறிப்பிடப்பட்டது , மெய்நிகர் குவிட்கள் உடல் வினாடிகளுக்கு ஒதுக்கப்படவில்லை. இது சரி செய்யப்பட்டது, எனவே இப்போது:func:`qiskit.compiler.transpile`செயல்பாடு மரியாதை``initial_layout``சுற்று உட்பொதிப்பதன் மூலம் வாதம்:from qiskit import QuantumCircuit, QuantumRegister from qiskit.compiler import transpile qr = QuantumRegister(2, name='qr') circ = QuantumCircuit(qr) circ.h(qr[0]) circ.cx(qr[0], qr[1]) transpile(circ, initial_layout=[1, 0]).draw(output='mpl')
initial_layoutஎன்பது சுற்றுவட்டத்தை விட அதிகமான க்யூபிட்களைக் குறிக்கிறது என்றால், கடத்தும் செயல்முறை சுற்றுக்கு துணைக்குழாய்களை நீட்டிக்கும்.from qiskit import QuantumCircuit, QuantumRegister from qiskit.compiler import transpile qr = QuantumRegister(2, name='qr') circ = QuantumCircuit(qr) circ.h(qr[0]) circ.cx(qr[0], qr[1]) transpile(circ, initial_layout=[4, 2], coupling_map=None).draw()
ancilla_0 -> 0 ────────── ancilla_1 -> 1 ────────── ┌───┐ qr_1 -> 2 ─────┤ X ├ └─┬─┘ ancilla_2 -> 3 ───────┼── ┌───┐ │ qr_0 -> 4 ┤ H ├──■── └───┘சரி செய்யப்பட்டது #5345
ஒரு புதிய குவார்க், `` user_cost_dict``
qiskit.transpiler.passes.TemplateOptimizationடிரான்ஸ்பைலர் தேர்ச்சிக்கான கன்ஸ்ட்ரக்டருக்கு சேர்க்கப்பட்டுள்ளது. இது வார்ப்புரு பொருந்தக்கூடிய வழிமுறைக்கு கேட்களுக்கான தனிப்பயன் செலவு அகராதியை வழங்க பயனர்களுக்கு உதவுகிறது. உதாரணத்திற்கு:from qiskit.transpiler.passes import TemplateOptimization cost_dict = {'id': 0, 'x': 1, 'y': 1, 'z': 1, 'h': 1, 't': 1} pass = TemplateOptimization(user_cost_dict=cost_dict)
கடந்து செல்லும் போது ஒரு சிக்கல்
Countsசில உள்ளீடுகளைக் கொண்ட பொருள் சரி செய்யப்பட்டது. திருத்தங்கள் #5424உதவியாளரின் ஒதுக்கீட்டை மேம்படுத்தியது க்யூபிட்ஸ் இல்:class:~qiskit.circuit.library.PolynomialPauliRotations மற்றும்:class:~qiskit.circuit.library.PiecewiseLinearPauliRotations இது இந்த சுற்றுகளை செயல்படுத்துவதை மிகவும் திறமையாக்குகிறது.நிர்ணயித்தல் `#5320<https://github.com/Qiskit/qiskit-terra/issues/5320>`__மற்றும் #5322<https://github.com/Qiskit/qiskit-terra/issues/5322>`__
MCXGateஇல்WeightedAdderவகுப்பில் ஒதுக்கப்பட்ட உதவி க்யூபிட்களின் பயன்பாட்டை சரிசெய்யவும். இவை முன்னர் ஒதுக்கப்பட்டன, ஆனால் இந்த பிழைத்திருத்தத்திற்கு முன்பு பயன்படுத்தப்படவில்லை. நிலையான`#5321 <https://github.com/Qiskit/qiskit-terra/issues/5321>`__பல சந்தர்ப்பங்களில், தி``latex``வெளியீட்டு முறை
qiskit.visualization.circuit_drawer`செயல்பாடு மற்றும் :meth:`~qiskit.circuit.QuantumCircuit.draw()முறை கேட் பெயரை சரியாகக் காட்டவில்லை, மற்ற சந்தர்ப்பங்களில், அவை இருக்க வேண்டிய கேட் அளவுருக்களை சேர்க்கவில்லை. இப்போது கேட் பெயர்கள் அவை காண்பிக்கப்படும் அதே வழியில் காட்டப்படும்``mpl`` வெளியீட்டு முறை, மற்றும் அளவுருக்கள் அவற்றைக் கொண்ட அனைத்து வாயில்களுக்கும் காண்பிக்கும். கூடுதலாக, சில வாயில்கள் சரியான வடிவத்தில் காட்டப்படவில்லை, மேலும் இவை சரி செய்யப்பட்டுள்ளன. திருத்தங்கள்`#5605 <https://github.com/Qiskit/qiskit-terra/issues/5605>`__, #4938, and #3765ஒரு சிக்கல் சரி செய்யப்பட்டது :meth: qiskit.circuit.Instruction.to_instruction கிளாசிக்கல் பதிவேடுகளைக் கொண்ட ஒரு துணை வட்டத்தில் முறை பயன்படுத்தப்பட்டது:class: ~qiskit.circuit.Instruction பொருள் பின்னர் சேர்க்கப்பட்டது:class: ~qiskit.circuit.QuantumCircuit பொருள், பின்னர் வெளியீடு:func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும்:meth:qiskit.circuit.QuantumCircuit.draw முறை சில சந்தர்ப்பங்களில் துணை வட்டத்தை ஒரு அளவின் இடதுபுறத்தில் வலதுபுறத்தில் காண்பிக்க வேண்டும்.நிர்ணயித்தல் `#5947<https://github.com/Qiskit/qiskit-terra/issues/5947>`__
உடன் சிக்கல் சரி செய்யப்பட்டது
Delayஒரு பொருள்கள்:class:~qiskit.circuit.QuantumCircuit எங்கேqiskit.compiler.transpile()இன் அலகுகளை மாற்ற முடியாது:class:~qiskit.circuit.Delay`அலகுகளுக்கு:class:`~qiskit.providers.Backend,என்றால்``backend``குவார்க் அமைக்கப்பட்டுள்ளது:func:~qiskit.circuit.transpile.அலகு பொருந்தாததால் இது தவறான நடத்தைக்கு வழிவகுக்கும், எடுத்துக்காட்டாக இயங்குகிறதுfrom qiskit import transpile, execute from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(1) qc.delay(100, [0], unit='us') qc = transpile(qc, backend) job = execute(qc, backend)
முன்னர் எதிர்பார்த்ததை விட (100e-6 / dt) நேர அட்டவணைகளுக்கு 100 நேர அட்டவணைகளுக்கு (ஒவ்வொரு கால அளவு dt) பின்நிலையில் தாமதத்தை ஏற்படுத்தியிருக்கும்.இது சரி செய்யப்பட்டது, எனவே
qiskit.compiler.transpile()செயல்பாடு அலகுகளை சரியாக மாற்றுகிறது.
பிற குறிப்புகள்¶
Qiskit.test.mock` இல் உள்ள அனைத்து போலி / போலி பின்தளத்தில் உள்ள ஸ்னாப்ஷாட்கள் சமீபத்திய சாதன மாற்றங்களை பிரதிபலிக்கும் வகையில் புதுப்பிக்கப்பட்டுள்ளன. இதில்:attr: ~ qiskit.providers.models.QasmBackendConfiguration.basis_gates பண்புக்கூறு:class:` ~ qiskit.providers.models.BackendConfiguration` to `` ['cx', 'rz', ' sx ',' x ',' id ']
, :class: `~ qiskit.providers.models.BackendProperties` இல் உள்ள குவிட் பண்புகளில் ``readout_lengthசொத்தைச் சேர்த்தல், மற்றும்:class: ~ qiskit.providers.models.PulseDefaults இதனால் அனைத்து போலி பின்தளங்களும் அளவுரு துடிப்பு அடிப்படையிலானவை:class:` ~ qiskit.pulse.InstructionScheduleMap` நிகழ்வுகள்.
Aer 0.8.0¶
முன்னுரை¶
0.8 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழை திருத்தங்கள் உள்ளன. இந்த வெளியீட்டிற்கான சிறப்பம்சங்கள்: ஒரு ஒருங்கிணைந்த அறிமுகம்:class: ~ qiskit.providers.aer.AerSimulator ஆதரிக்கப்படும் எந்த உருவகப்படுத்துதல் முறைகளையும் பயன்படுத்தி சுற்று உருவகப்படுத்துதல்களை இயக்குவதற்கான பின்தளத்தில்; ஒரு சிமுலேட்டர் அறிவுறுத்தல் நூலகம் (:mod: qiskit.providers.aer.library) இதில் பல்வேறு வகையான சிமுலேட்டர் தரவைச் சேமிப்பதற்கான தனிப்பயன் வழிமுறைகள் உள்ளன; விநியோகிக்கப்பட்ட கணினி சூழலில் பெரிய உருவகப்படுத்துதல்களை இயக்குவதற்கான MPI ஆதரவு.
புதிய அம்சங்கள்¶
இந்த வெளியீட்டில் பைதான் 3.9 ஆதரவு சேர்க்கப்பட்டுள்ளது. நீங்கள் தற்பொழுது Qiskit Aer மூலத்திலிருந்து கட்டமைக்காமல் பைதான் 3.9 பயன்படுத்தி இயக்கலாம்.
CMake கொடியை ` ` DISABLE_CONAN ` ` (default= ` ` OFF ` `) சேர். மூலத்திலிருந்து நிறுவி, ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `. இது ஒரு சூழல் மாறாக ` DISABLE_CONAN ` `, இது CMake கொடியை மேல் எடுத்துக் கொள்ளும். இது AER கட்டுவதற்கு அதிகாரப்பூர்வை அளிக்கவில்லை. இப்படி, பயனர் அனைத்து தேவையான நூலகங்களையும், ஒத்திசைவு கோப்புகளையும் வழங்குவதற்கு பொறுப்பேற்றது.
இந்த வெளியீட்டில் விநியோகிக்கப்பட்ட கணினி சூழலில் பெரிய உருவகப்படுத்துதல்களை இயக்க MPI ஆதரவுடன் கிஸ்கிட்-ஏரை உருவாக்குவதற்கான ஆதரவு அடங்கும். `பங்களிக்கும் வழிகாட்டியைக் காண்க<https://github.com/Qiskit/qiskit-aer/blob/master/CONTRIBUTING.md#building-with-mpi-support>`__ ஒரு MPI சூழலில் கட்டமைத்தல் மற்றும் இயங்குவதற்கான வழிமுறைகளுக்கு.
விண்டோஸில் இயக்கப்பட்ட CUDA உடன் கிஸ்கிட்-ஏரை உருவாக்க இப்போது சாத்தியம். பங்களிக்கும் வழிகாட்டியைக் காண்க ஜி.பீ.யூ ஆதரவுடன் மூலத்திலிருந்து கட்டமைப்பதற்கான வழிமுறைகளுக்கு.
மூலத்திலிருந்து கிஸ்கிட்-ஏர் பைதான் நீட்டிப்பை உருவாக்கும்போது, C++ தொகுப்பை இயக்க பல உருவாக்க சார்புகளை முன்பே நிறுவ வேண்டும். நீட்டிப்பை உருவாக்கும் போது பயனர் வசதியாக, காணாமல் போன இந்த உருவாக்க சார்புகளில் ஏதேனும் தானாகவே நிறுவப்படும்
pipஇயல்பான முன்setuptoolsநிறுவல் படிகள், இருப்பினும் இந்த தானியங்கி நிறுவலைத் தவிர்ப்பது முன்னர் சாத்தியமில்லை. இந்த சிக்கலை தீர்க்க ஒரு புதிய சூழல் மாறிDISABLE_DEPENDENCY_INSTALLஇணைக்கப்பட்டு விட்டது. இது அமைக்கப்பட்டால்1அல்லதுONமூலத்திலிருந்து பைதான் நீட்டிப்பை உருவாக்கும்போது, இந்த காணாமல் போன உருவாக்க சார்புகளின் தானியங்கி நிறுவலை இது முடக்கும்.உகந்த N-qubit பவுலி வாயிலுக்கு (:class: qiskit.circuit.library.PauliGate): வகுப்பிற்கு ஆதரவைச் சேர்க்கிறது :class:` ~ qiskit.providers.aer.StatevectorSimulator` ,:class: ~qiskit.providers.aer. யூனிட்டரிசிமுலேட்டர், மற்றும் ஸ்டேட்வெக்டர் மற்றும் அடர்த்தி மேட்ரிக்ஸ் முறைகள் :class: ~qiskit.providers.aer.QasmSimulator மற்றும் :class:` ~ qiskit.providers.aer.AerSimulator`.
தி
AerSimulator(),QasmSimulator,StatevectorSimulator, மற்றும்:class:~qiskit.providers.aer.UnitarySimulator பின்தளத்தில் இப்போது ஒரு எடுக்கும்QuantumCircuitபொருள்) அது உள்ளீடாக இருப்பதால். முந்தையQasmQobjபொருள் இப்போதும் ஆதரிக்கப்படுகிறது, ஆனால் எதிர்கால வெளியீட்டில் அது நீக்கப்படும்.For an example of how to use this see:
from qiskit import transpile, QuantumCircuit from qiskit.providers.aer import Aer backend = Aer.get_backend('aer_simulator') circuit = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) qc.measure_all() tqc = transpile(circuit, backend) result = backend.run(tqc, shots=4096).result()
தி:meth:~qiskit.providers.aer.PulseSimulator.run அதற்கான முறை:class:~qiskit.providers.aer.PulseSimulator பின்தளத்தில் இப்போது ஒரு எடுக்கும்:class:~qiskit.pulse.Schedule`(அல்லது ஒரு பட்டியல் :class:`~qiskit.pulse.Schedule பொருள்) அது உள்ளீடு என்பதால். முந்தைய :class:`~qiskit.qobj.PulseQobj`பொருள் இப்போதும் ஆதரிக்கப்படுகிறது, ஆனால் எதிர்கால வெளியீட்டில் அது நீக்கப்படும்.
புதியதைச் சேர்க்கிறது:class:~qiskit.provider.aer.AerSimulator பின்வரும் உருவகப்படுத்துதல் முறைகளை ஆதரிக்கும் சிமுலேட்டர் பின்தளத்தில்
automaticstatevectorstabilizerdensity_matrixmatrix_product_stateunitarysuperop
இயல்புநிலை automatic முறை சுற்று வழிமுறைகள் மற்றும் இரைச்சல் மாதிரியின் அடிப்படையில் (ஏதேனும் இருந்தால்) ஒவ்வொரு ரன் சுற்றுக்கும் தனித்தனியாக ஒரு உருவகப்படுத்துதல் முறையைத் தேர்ந்தெடுக்கும். ஒரு குறிப்பிட்ட முறையுடன் ஒரு ஒப்புருவாகியைத் தொடங்குவது method விருப்பத்தைப் பயன்படுத்தி செய்யப்படலாம்.
device='GPUபின்தளத்தில் விருப்பத்தை அமைப்பதன் மூலம் ஸ்டேட்வெக்டர், அடர்த்தி மேட்ரிக்ஸ் மற்றும் ஒற்றையாட்சி முறைகளுக்கான ஜி. பீ. யூ உருவகப்படுத்துதலை இயக்க முடியும்.ரன் சர்க்யூட்டின் யூனிட்டரி மேட்ரிக்ஸ் அல்லது சூப்பர் ஆபரேட்டர் மேட்ரிக்ஸை உருவகப்படுத்துவதால்
unitaryமற்றும்superopமுறைகள் அளவீட்டை ஆதரிக்காது என்பதை நினைவில் கொள்க, எனவே புதியது :func: ~ qiskit.providers.aer.library. save_unitary ,:func: ~ qiskit.providers.aer.library.save_superop, அல்லது:func:` ~ qiskit.providers.aer.library.save_state` அறிவுறுத்தல்கள் சிமுலேட்டர் நிலையை திரும்பப் பெற்ற முடிவுகளில் சேமிக்க பயன்படுத்தப்பட வேண்டும். இதேபோல் பிற உருவகப்படுத்துதல் முறைகளின் நிலையும் பொருத்தமான வழிமுறைகளைப் பயன்படுத்தி சேமிக்க முடியும். மேலும் விவரங்களுக்கு:mod: qiskit.providers.aer.library API ஆவணங்களைக் காண்க.Note that the
AerSimulatorsimulator superceds theQasmSimulator,StatevectorSimulator, andUnitarySimulatorbackends which will be deprecated in a future release.புதுப்பிக்கிறது:class: ~ qiskit.providers.aer.AerProvider வகுப்பை பலவற்றை சேர்க்க:class:` ~ qiskit.providers.aer.AerSimulator` பின்தளத்தில் கிடைக்கக்கூடிய அனைத்து உருவகப்படுத்துதல் முறைகள் மற்றும் உருவகப்படுத்துதல் சாதனங்களுக்கும் முன்பே கட்டமைக்கப்பட்டுள்ளது. புதிய பின்தளத்தில் பெயர்களைப் பயன்படுத்தி வழங்குநர் இடைமுகத்தின் மூலம் அணுகலாம்
"aer_simulator""aer_simulator_statevector""aer_simulator_stabilizer""aer_simulator_density_matrix""aer_simulator_matrix_product_state""aer_simulator_extended_stabilizer""aer_simulator_unitary""aer_simulator_superop"
இணக்கமான கணினியில் GPU ஆதரவுடன் ஏர் நிறுவப்பட்டிருந்தால் கூடுதல் GPU பின்தளத்தில் கிடைக்கும்
"aer_simulator_statevector_gpu""aer_simulator_density_matrix_gpu""aer_simulator_unitary_gpu"
உதாரணத்திற்கு:
from qiskit import Aer # Get the GPU statevector simulator backend backend = Aer.get_backend('aer_simulator_statevector_gpu')
`` "extended_stabilizer" `` உருவகப்படுத்துதல் முறையைப் பயன்படுத்தும் போது அளவீடுகளைச் செய்வதற்கான புதிய
norm estimationமுறையைச் சேர்த்தது. பின்வரும் விருப்பங்களை வகுப்பிற்கு அனுப்புவதன் மூலம் இந்த விதிமுறை மதிப்பீட்டு முறையைப் பயன்படுத்தலாம் :class: ~ qiskit.providers.aer.AerSimulator மற்றும்:class:` ~ qiskit.providers.aer.QasmSimulator` பின்தளத்தில்simulator = QasmSimulator( method='extended_stabilizer', extended_stabilizer_sampling_method='norm_estimation')
விதிமுறை மதிப்பீட்டு முறை மாற்று `` metropolis`` அல்லது
resampled_metropolisவிருப்பங்களை விட மெதுவாக உள்ளது, ஆனால் சிதறல் வெளியீட்டு விநியோகங்களுடன் சுற்றுகளில் சிறந்த செயல்திறனை அளிக்கிறது. மேலும் தகவலுக்கு:class: ~ qiskit.providers.aer.QasmSimulator இன் ஆவணங்களைக் காண்க.சிமுலேட்டரின் நிலையை பல்வேறு வடிவங்களில் சேமிப்பதற்கான வழிமுறைகளைச் சேர்க்கிறது. இந்த வழிமுறைகள்
These instructions can be appended to a quantum circuit by using the
save_density_matrix,save_matrix_product_state,save_stabilizer,save_state,save_statevector,save_statevector_dict,save_unitaryசுற்று முறைகள் Aer ஐ இறக்குமதி செய்யும் போது` QuantumCircuit` இல் சேர்க்கப்படுகின்றன.ஒவ்வொரு அறிவுறுத்தலுக்கும் முறை பொருந்தக்கூடிய தன்மை குறித்த விவரங்களுக்கு :mod: qiskit.providers.aer.library API ஆவணங்களைக் காண்க.
ஸ்னாப்ஷாட் வழிமுறைகள் என்பதை நினைவில் கொள்க:class:~qiskit.providers.aer.extensions.SnapshotStatevector,
SnapshotDensityMatrix,:class:~qiskit.providers.aer.extensions.SnapshotStabilizer இன்னும் ஆதரிக்கப்படுகின்றன, ஆனால் எதிர்கால வெளியீட்டில் நீக்கப்படும்.சேர்க்கிறது
qiskit.providers.aer.library.SaveExpectationValueமற்றும்qiskit.providers.aer.library.SaveExpectationValue Varianceஎதிர்பார்ப்பு மதிப்பைச் சேமிப்பதற்கான குவாண்டம் சுற்று வழிமுறைகள்:math:langle Hrangle = Tr[Hrho],அல்லது எதிர்பார்ப்பு மதிப்பு மற்றும் மாறுபாடு:math:Var(H) = langle H^2rangle - langle Hrangle^2,ஒரு ஹெர்மிடியன் ஆபரேட்டரின் \(H\)rho`.இந்த வழிமுறைகளை ஒரு குவாண்டம் சுற்றுக்கு பயன்படுத்தலாம்:class:~qiskit.providers.aer.library.save_expectation_value`மற்றும் :class:`~qiskit.providers.aer.library.save_expectation_value_variance சேர்க்கப்பட்ட சுற்று முறைகள்``QuantumCircuit``ஏர் ஐ இறக்குமதி செய்யும் போது.ஸ்னாப்ஷாட் அறிவுறுத்தல் என்பதை நினைவில் கொள்க:class:~qiskit.providers.aer.extensions.SnapshotExpectationValue, இன்னும் ஆதரிக்கப்படுகிறது, ஆனால் எதிர்கால வெளியீட்டில் நீக்கப்படும்.
சேர்க்கிறது
qiskit.providers.aer.library.SaveProbabilitiesமற்றும்qiskit.providers.aer.library.SaveProbabilitiesDict`சிமுவல்டர் மாநிலத்தின் Z- அடிப்படையிலான அளவீடுகளுக்கான அனைத்து அளவீட்டு விளைவு நிகழ்தகவுகளையும் சேமிப்பதற்கான குவாண்டம் சுற்று வழிமுறை. இந்த வழிமுறைகளை ஒரு குவாண்டம் சுற்றுக்கு பயன்படுத்தலாம் :class:`~qiskit.providers.aer.library.save_probabilitiesமற்றும்save_probabilities_dictசேர்க்கப்பட்ட சுற்று முறைகள்``QuantumCircuit``ஏர் ஐ இறக்குமதி செய்யும் போது.ஸ்னாப்ஷாட் அறிவுறுத்தல் என்பதை நினைவில் கொள்க:class:~qiskit.providers.aer.extensions.SnapshotProbabilities, இன்னும் ஆதரிக்கப்படுகிறது, ஆனால் எதிர்கால வெளியீட்டில் நீக்கப்படும்.
சேர்க்கிறது:class: qiskit.providers.aer.library.SaveAmplitude மற்றும்:class:` qiskit.providers.aer.library.SaveAmplitudeSquared` தேர்ந்தெடுக்கப்பட்ட சிக்கலான ஸ்டேட்வெக்டர் பெருக்கங்களை சேமிப்பதற்கான சுற்று வழிமுறைகள், அல்லது ஆதரிக்கப்பட்ட உருவகப்படுத்துதல் முறைகளுக்கான நிகழ்தகவுகளை (பெருக்கங்கள்) . :class: ~ qiskit.providers.aer.library.save_amplitude மற்றும்:class:` ~ qiskit.providers.aer.library.save_amplitude_squared` சுற்று முறைகளைப் பயன்படுத்தி இந்த வழிமுறைகளை ஒரு குவாண்டம் சுற்றுக்குச் சேர்க்கலாம். Aer ஐ இறக்குமதி செய்யும் போது
QuantumCircuit.ஒப்புருவாக்கிகளின் நிலையை அமைப்பதற்கான வழிமுறைகளைச் சேர்க்கிறது. இந்த வழிமுறைகள் சுற்றுகளில் உள்ள முழு எண்ணிக்கையிலான க்யூபிட்டுகளில் வரையறுக்கப்பட வேண்டும். அவை ஒரு சுற்றுவட்டத்தின் எந்த நேரத்திலும் பயன்படுத்தப்படலாம் மற்றும் ஒப்புருவாக்கி நிலையை குறிப்பிட்டவற்றுடன் மேலெழுதும். சேர்க்கப்பட்ட வழிமுறைகள்
set_density_matrix,set_stabilizer,set_statevector,set_unitary, ஏரை இறக்குமதி செய்யும் போதுQuantumCircuitஇல் சேர்க்கப்படும் இந்த சுற்று முறைகள் ஆகியவற்றைப் பயன்படுத்தி இந்த வழிமுறைகளை ஒரு குவாண்டம் சுற்றுடன் சேர்க்கலாம்.ஒவ்வொரு அறிவுறுத்தலுக்கும் முறை பொருந்தக்கூடிய தன்மை குறித்த விவரங்களுக்கு :mod: qiskit.providers.aer.library API ஆவணங்களைக் காண்க.
"Matrix_product_state"உருவகப்படுத்துதல் முறைக்கு மூலைவிட்ட வாயில்களுக்கான ஆதரவு சேர்க்கப்பட்டது.`` "matrix_product_state" `` உருவகப்படுத்துதல் முறைக்கு
initializeஅறிவுறுத்தலுக்கான ஆதரவு சேர்க்கப்பட்டது.
தெரிந்த சிக்கல்கள்¶
`` "Matrix_product_state" `` உருவகப்படுத்துதல் முறையைப் பயன்படுத்தி க்ராஸ் இரைச்சல் மாதிரியுடன் சில சுற்றுகளின் உருவகப்படுத்துதல் சிமுலேட்டரை செயலிழக்கச் செய்யும் ஒரு அறியப்பட்ட சிக்கல் உள்ளது. மேலும் தகவலுக்கு # 306 <https://github.com/Qiskit/qiskit-aer/issues/1184> __ ஐப் பார்க்கவும்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
Conan இன் குறைந்தபட்ச பதிப்பு 1.31.2 ஆக உயர்த்தப்பட்டுள்ளது. urllib3 <https://pypi.org/project/urllib3/> __ (இது கோனனின் சார்பு) இன் புதிய பதிப்புகளுடன் பொருந்தக்கூடிய சிக்கலை சரிசெய்ய இது அவசியம். இது புதிய ஆப்பிள் கணினிகளைக் கொண்ட பயனர்களுக்கு பயனுள்ளதாக இருக்கும் ஆப்பிள் கிளாங் 12 க்கான சொந்த ஆதரவையும் சேர்க்கிறது.
pybind11குறைந்தபட்ச பதிப்பு 2.4 க்கு பதிலாக 2.6 ஆகும். விண்டோஸில் CUDA இயக்கப்பட்ட தொகுப்பை ஆதரிக்க இது தேவைப்படுகிறது.கட்டு சார்புநிலையாக சைதான் அகற்றப்பட்டது.
Qiskit aer 0.7 இல் நீக்கப்பட்ட இரைச்சல் மாதிரிகளிலிருந்து x90 கேட் சிதைவு நீக்கப்பட்டது. வழக்கமான சிதைவு இரைச்சல் மாதிரி அடிப்படை கேட் மற்றும் Qiskit டிரான்ஸ்பைலரைப் பயன்படுத்தி இந்த சிதைவு இப்போது செய்யப்படுகிறது.
`` "extended_stabilizer" `` உருவகப்படுத்துதல் முறைக்கான பின்வரும் விருப்பங்கள் மாற்றப்பட்டுள்ளன.
extended_stabilizer_measure_sampling: இந்த விருப்பம்extended_stabilizer_sampling_methodவிருப்பங்களால் மாற்றப்பட்டுள்ளது, இது க்யூபிட் அளவீட்டை எவ்வாறு உருவகப்படுத்துகிறோம் என்பதைக் கட்டுப்படுத்துகிறது.`` extended_stabilizer_mixing_time``: இதை தெளிவுபடுத்துவதற்காக இந்த விருப்பம் `` extended_stabilizer_metropolis_mixing_time`` என மறுபெயரிடப்பட்டது, இது `` metropolis`` மற்றும் `` resampled_metropolis`` மாதிரி முறைகளுக்கு மட்டுமே பொருந்தும்.
extended_stabilizer_norm_estimation_samples: இந்த விருப்பம்extended_stabilizer_norm_estimation_default_samplesஎன மறுபெயரிடப்பட்டது.
ஒரு கூடுதல் விருப்பம்,
extended_stabilizer_norm_estimation_repetitionsசேர்க்கப்பட்டுள்ளது, இது விதிமுறை மதிப்பீட்டு மாதிரி முறையின் நடத்தையின் ஒரு பகுதியைக் கட்டுப்படுத்துகிறது.
தேய்மான குறிப்புகள்¶
பைதான் 3.6 ஆதரவு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். ஆதரவு நீக்கப்படும் போது நீங்கள் பயன்படுத்தும் பைதான் பதிப்பை பைதான் 3.7 அல்லது அதற்கு மேல் மேம்படுத்த வேண்டும்.
பிழை திருத்தங்கள்¶
பிழையை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.providers.aer.AerProvider ஐப் பயன்படுத்தி திரும்பிய பின்தளத்தில் விருப்பங்கள் அமைக்கப்படுகின்றன: மெத்:` ~ qiskit.providers.aer.QasmSimulator.set_options` வழங்குநரில் சேமிக்கப்பட்டு அடுத்தடுத்த அழைப்புகளுக்கு தொடர்ந்து இருக்கும் to: meth: ~ qiskit.providers.aer.AerProvider.get_backend அதே பெயரிடப்பட்ட பின்தளத்தில். இப்போது ஒவ்வொரு அழைப்பும் மற்றும்: மெத்: ~ qiskit.providers.aer.AerProvider.backends கட்டமைக்கக்கூடிய சிமுலேட்டர் பின்தளத்தில் ஒரு புதிய நிகழ்வை வழங்குகிறது.
பிழை செய்தியில் பிழை தகவல் திரும்பி திரும்பும் போது ஒரு சுற்றுச்சொல் ஆதரிக்கப்படாத உரையாடல் கட்டளையை கொண்டிருக்கும். முன்னதாக சில ஆதரவுப் பரிந்துரைகள் பிழை செய்திகளில் பட்டியலிடப்பட்டன.
அமைப்பில் சிக்கலை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator அடிப்படை வாயில்கள்` " முறை " மற்றும் " சத்தம்_மாடல் " விருப்பங்களை ஒன்றாகப் பயன்படுத்தும் போது, அவற்றைப் பயன்படுத்தி உருவாக்கப்பட்ட சிமுலேட்டருடன் பயன்படுத்தும் போது: மெத் : `~ qiskit.providers.aer.QasmSimulator.from_backend. இப்போது பட்டியலிடப்பட்ட அடிப்படை வாயில்கள் பின்தளத்தில் உள்ளமைவு, உருவகப்படுத்துதல் முறை மற்றும் இரைச்சல் மாதிரி அடிப்படை வாயில்கள் ஆதரிக்கும் வாயில்களின் குறுக்குவெட்டாக இருக்கும். இரைச்சல் மாதிரி அடிப்படை வாயில்கள் மற்றும் சிமுலேட்டர் அடிப்படை வாயில்கள் வெட்டுவது காலியாக இருந்தால் எச்சரிக்கை பதிவு செய்யப்படும்.
பிழை சரிசெய்யவும்,
"sx"கேட் :class:`~qiskit.circuit.library.SXGate ஆனது C ++ குறியீட்டில் ஆதரிக்கப்படும் வாயிலாக பட்டியலிடப்படவில்லை, ``matrix_product_state.hp` இன்StateOpSet.`` "சி.எஸ்.எக்ஸ்" ``, `` "கியூ 2" ``, `` "கியூ 3" `` ஆகியவை `` "அடர்த்தி_மாட்ரிக்ஸ்" `` முறை: வகுப்பின்: ~ முறைக்கு ஆதரிக்கப்பட்ட அடிப்படை வாயில்களாக தவறாக பட்டியலிடப்பட்ட பிழையை சரிசெய்யவும். qiskit.providers.aer.QasmSimulator.
`` Matrix_product_state_internal.cpp`` இல் உள்ள செயல்பாடுகளுக்கு இடையில் அளவுருக்கள் தவறாக அனுப்பப்பட்ட பிழையை சரிசெய்யவும், இது தவறான உருவகப்படுத்துதலை ஏற்படுத்துகிறது, மேலும் தவறான நிலைகளை அடைகிறது, இது எல்லையற்ற சுழற்சியை ஏற்படுத்தியது.
நிபந்தனை பதிவேட்டின் அகலம் 64 ஐ விட அதிகமாக இருக்கும்போது `` c_if`` வேலை செய்யாத ஒரு பிழையை சரிசெய்கிறது. # 1077 <https://github.com/Qiskit/qiskit-aer/issues/1077> __.
ஒரு பிழையை சரிசெய்கிறது # 1153 <https://github.com/Qiskit/qiskit-aer/issues/1153> __) அங்கு நிபந்தனை வாயில்களில் சத்தம் எப்போதும் கிளாசிக்கல் அடிப்படையில் நிபந்தனை வாயில் பயன்படுத்தப்பட்டதா என்பதைப் பொருட்படுத்தாமல் பயன்படுத்தப்படுகிறது. பதிவு மதிப்பு. இப்போது நிபந்தனை வாயிலில் சத்தம் நிபந்தனை வாயில் பயன்படுத்தப்படும் வழக்கில் மட்டுமே பயன்படுத்தப்படும்.
ஒரு பிழை நீக்கப்பட்ட OpenMP கொள்கையை அமைக்கும் போது உண்மையில் அமைக்கப்பட்டிருக்கும்.
QasmSimulator யின் மாட்ரிக்ஸ் உற்பத்தி மாநில முறையில் தட்டை பயன்படுத்தும்போது ஒரு பிழை நீக்கு.
திருத்தப்பட்ட பிழை #1126: ஒற்றை Qubit-ன் அளவீட்டை அறிக்கையளிப்பதில் பிழை. அளவிடப்பட்ட மதிப்பை வெளியீட்டு தரவு கட்டமைப்பிற்கு நகலெடுக்கும் போது பிழை ஏற்பட்டது.
MPS இல், apply_kraus ஆனது உள் குவிட்டுகளுக்குப் பதிலாக, அளவுரு குவிட்டுகளில் உள்ளீட்டு பிட்களில் நேரடியாக இயங்குகிறது. எம். பி. எஸ் வழிமுறையில், குவிட்கள் தொடர்ந்து சுற்றி வருகின்றன, எனவே அனைத்து செயல்பாடுகளும் உள் குவிட்டுகளுக்கு பயன்படுத்தப்பட வேண்டும்.
MPS:: sample_measure ஐத் தொடங்கும்போது, நாம் முதலில் qitsm_controller இல் உள்ள அனுமானமாக இருப்பதால், முன்னிருப்புகளை வரிசைப்படுத்த வேண்டும். இது move_all_qubits_to_sorted_ordering முறையைத் தொடங்குவதன் மூலம் செய்யப்படுகிறது. இது மாதிரி_அளவு_பயன்படுத்தல்_அறிவிப்பு_ அளவீட்டில் சரியானது, ஆனால் மாதிரி_அளவு_பயன்படுத்தல்_செயல்பாடுகளில் காணவில்லை.
from_backendமுறையின் பிழையை சரிசெய்கிறது. இது எப்போதும் `` True`` என அமைக்கப்படுவதை விட பின்நிலையில் மதிப்பு.பிழைகளை சரிசெய்கிறது: மெத்: ~ qiskit.providers.aer.noise.NoiseModel.from_backend மற்றும்: meth:` ~ qiskit.providers.aer.QasmSimulator.from_backend` where: attr: ~ qiskit.providers.aer. அடிப்படை வாயில் தொகுப்பு ` ['ஐடி', 'ஆர்.எஸ்', 'எஸ்.எக்ஸ்', 'எக்ஸ்', 'சிஎக்ஸ்'] `` ஐபிஎம்யூ சாதனங்களுக்கு NoiseModel.basis_gates` தவறாக அமைக்கப்பட்டது. இப்போது சத்தம் மாதிரியில் எப்போதும் பின்தளத்தில் அடிப்படை வாயில்கள் போன்ற அடிப்படை வாயில்கள் இருக்கும், அந்த அறிவுறுத்தல்கள் சத்தம் மாதிரியில் பிழைகள் உள்ளதா இல்லையா என்பதைப் பொருட்படுத்தாமல்.
விரிவாக்கப்பட்ட "extended_stabilizer" உருவகப்படுத்துதல் முறை, குவாண்டம் சுற்றுகளில் சிதறல் வெளியீட்டு விநியோகங்களுடன் தவறான முடிவுகளைத் தரும் சிக்கலை சரிசெய்கிறது. மேலும் தகவல்களுக்கும் எடுத்துக்காட்டுகளுக்கும் # 306 <https://github.com/Qiskit/qiskit-aer/issues/306> __ ஐப் பார்க்கவும்.
Ignis 0.6.0¶
புதிய அம்சங்கள்¶
qiskit.ignis.mitigation.expval_meas_mitigator_circuits()செயல்பாடு மேம்படுத்தப்பட்டுள்ளது, இதனால் CTMP முறையால் அளவுத்திருத்தத்திற்கு பயன்படுத்தப்படும் செயல்பாட்டின் மூலம் உருவாக்கப்படும் சுற்றுகளின் எண்ணிக்கை \(O(n)\) இலிருந்து \(O(\log{n})\) ஆக குறைக்கப்பட்டுள்ளது.(எங்கே :math: n என்பது குவிட்களின் எண்ணிக்கை).
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
qiskit.ignis.verification.randomized_benchmarking_seq()செயல்பாடு இப்போது மேம்படுத்தப்பட்ட CNOTDihedral வகுப்பைப் பயன்படுத்துகிறது ,:class:qiskit.ignis.verification.CNOTDihedral, இது இரண்டு க்யூபிட்டுகளுக்கு மேல் CNOT-Dihedral சீரற்ற இலக்குக் குறி செய்ய உதவுகிறது.பைதான் பேக்கேஜ்
retworkxஇப்போது Qiskit-இக்னிஸை நிறுவுவதற்கான தேவை. சிறந்த செயல்திறனைப் பெற இது முந்தையnetworkxஇன் பயன்பாட்டை மாற்றுகிறது (இது இனி தேவையில்லை).scikit-learnசார்பு இனி தேவையில்லை, இப்போது இது ஒரு விருப்பத் தேவையாகும். நீங்கள் IQ அளவீட்டு பாகுபாடுகளைப் பயன்படுத்துகிறீர்கள் என்றால் (IQDiscriminationFitter,LinearIQDiscriminationFitter,QuadraticIQDiscriminationFitter, அல்லதுSklearnIQDiscriminator)pip install scikit-learn`ஐ இயக்குவதன் மூலமாகவோ அல்லது Qiskit-இக்னிஸைpip install qiskit-ignis[iq]உடன் நிறுவுவதன் மூலமாகவோ நீங்கள் இப்போது ஸ்கிக்கிட்-கற்றலை கைமுறையாக நிறுவ வேண்டும்.
பிழை திருத்தங்கள்¶
எதிர்பார்ப்பு மதிப்பு முறையில் ஒரு சிக்கல் சரி செய்யப்பட்டது:meth:~qiskit.ignis.mitigation.TensoredExpvalMeasMitigator.expectation_value, பிழை குறைப்பு வகுப்புகளுக்கு :class:`~qiskit.ignis.mitigation.TensoredExpvalMeasMitigator`மற்றும் :class:`~qiskit.ignis.mitigation.CTMPExpvalMeasMitigator`என்றால்``qubits``குவார்க் குறிப்பிடப்படவில்லை, இது எண்ணிக்கை அகராதியில் உள்ள கிளாசிக்கல் பிட்களின் எண்ணிக்கையை விட, தணிப்பாளரின் மொத்த குவிட்களின் எண்ணிக்கையை தவறாகப் பயன்படுத்தும். சரிசெய்யப்பட்டது`#561 <https://github.com/Qiskit/qiskit-ignis/issues/561>`__
வர்க்கத்தின் `` "ஆட்டோ" `` முறையை சரிசெய்யவும்: ~ qiskit.ignis.verification.tomography.TomographyFitter ,: class:` ~ qiskit.ignis.verification.tomography.StateTomographyFitter`, மற்றும்: class: ~ qiskit.ignis.verification.tomography.ProcessTomographyFitter ஐ CVXPY நிறுவப்பட்டிருந்தால் `` "cvx" `` ஐ மட்டுமே பயன்படுத்த * மற்றும் * SCS ஐத் தவிர மூன்றாம் தரப்பு SDP தீர்வி கிடைக்கிறது. ஏனென்றால், எஸ்சிஎஸ் தீர்வி மற்ற தீர்வி முறைகளை விட குறைந்த துல்லியத்தன்மையைக் கொண்டுள்ளது மற்றும் பெரும்பாலும் அடர்த்தி மேட்ரிக்ஸ் அல்லது சோய்-மேட்ரிக்ஸை முழுமையாக நேர்மறையானது அல்ல, மேலும்: func: qiskit.quantum_info.state_fidelity அல்லது: func: உடன் பயன்படுத்தும்போது சரிபார்ப்பில் தோல்வியடைகிறது.
அக்வா 0.9.0¶
இந்த வெளியீடு Qiskit அக்வா திட்டத்தை அதிகாரப்பூர்வமாக மதிப்பிடுகிறது, எதிர்காலத்தில் (இந்த வெளியீட்டில் இருந்து 3 மாதங்களுக்குள் விரைவில்) அக்வா திட்டம் அதன் இறுதி வெளியீட்டைக் கொண்டிருக்கும் மற்றும் காப்பகப்படுத்தப்படும். Qiskit-அக்வா வழங்கும் அனைத்து செயல்பாடுகளும் புதிய தொகுப்புகள் அல்லது பிற Qiskit தொகுப்புகளுக்கு மாற்றப்பட்டுள்ளன. Qiskit-அக்வாவால் வழங்கப்பட்ட பயன்பாட்டு தொகுதிகள் பல புதிய தொகுப்புகளாக பிரிக்கப்பட்டுள்ளன: qiskit-optimization, qiskit-nature, qiskit-machine-learning``மற்றும் ``qiskit-finance. இந்த தொகுப்புகளை அவர்களால் நிறுவ முடியும் (நிலையான குழாய் நிறுவல் கட்டளை வழியாக, அதாவது pip install qiskit-nature) அல்லது மீதமுள்ள Qiskit மெட்டாபேக்கேஜுடன் விருப்ப கூடுதல் (அதாவது, pip install 'qiskit[finance,optimization]' அல்லது pip install 'qiskit[all]'. வழிமுறைகளுக்கான முக்கிய கட்டுமானத் தொகுதிகள் மற்றும் ஆபரேட்டர் ஓட்டம் இப்போது Qiskit-டெர்ராவின் ஒரு பகுதியாக உள்ளன:mod: qiskit.algorithms மற்றும்:mod:` qiskit.opflow`. உங்கள் தற்போதைய அக்வா பயன்பாட்டைப் பொறுத்து நீங்கள் பயன்பாட்டு தொகுப்புகள் அல்லது Qiskit டெர்ராவில் புதிய தொகுதிகள் பயன்படுத்த வேண்டும்.
Qiskit அக்வாவைப் பயன்படுத்துவதிலிருந்து எவ்வாறு இடம்பெயர்வது என்பது பற்றிய கூடுதல் விவரங்களுக்கு நீங்கள் Qiskit அக்வா இடம்பெயர்வு வழிகாட்டிஅக்வா.
IBM Q Provider 0.12.2¶
எந்த மாற்றங்களும் இல்லை
Qiskit 0.24.1¶
Terra 0.16.4¶
எந்த மாற்றங்களும் இல்லை
Aer 0.7.6¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.5.2¶
எந்த மாற்றங்களும் இல்லை
Aqua 0. 8. 2¶
எந்த மாற்றங்களும் இல்லை
IBM Q Provider 0.12.2¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
qiskit.providers.ibmq.IBMQBackend.defaults()now returns the pulse defaults for the backend if the backend supports pulse. However, your provider may not support pulse even if the backend does. Theopen_pulseflag in backend configuration indicates whether the provider supports it.
Qiskit 0.24.0¶
Terra 0.16.4¶
எந்த மாற்றங்களும் இல்லை
Aer 0.7.6¶
புதிய அம்சங்கள்¶
இது Qiskit Aer-ன் முதல் வெளியீடாகும், இது முன்னரே தொகுக்கப்பட்ட பைனரிகளை PyPi-க்கு லினக்ஸிற்காக aarch64 (arm64) இல் வெளியிடுகிறது. இந்த வெளியீட்டில் இருந்து லினக்ஸ் aarch 64 தொகுப்புகள் வெளியிடப்பட்டு ஆதரிக்கப்படும்.
பிழை திருத்தங்கள்¶
பிழை திருத்தம் #1153 கிளாசிக்கல் பதிவு மதிப்பின் அடிப்படையில் நிபந்தனை வாயில் உண்மையில் பயன்படுத்தப்பட்டதா என்பதைப் பொருட்படுத்தாமல் நிபந்தனை வாயில்களில் இரைச்சல் எப்போதும் பயன்படுத்தப்படுகிறது. இப்போது நிபந்தனை வாயிலில் இரைச்சல் நிபந்தனை வாயில் பயன்படுத்தப்படும் போது மட்டுமே பயன்படுத்தப்படும்.
திருத்தப்பட்ட பிழை #1126: ஒற்றை Qubit-ன் அளவீட்டை அறிக்கையளிப்பதில் பிழை. அளவிடப்பட்ட மதிப்பை வெளியீட்டு தரவு கட்டமைப்பிற்கு நகலெடுக்கும் போது பிழை ஏற்பட்டது.
முன்னதாக Aer பின்தளத்தில் பொருள்கள் ஆதரிக்கப்படுவதாகக் கூறப்படும் இயல்புநிலை அறிக்கையிடப்பட்ட எண்ணிக்கையிலான Qubit-கள் மற்றும் சிமுலேட்டர் உண்மையில் இயங்கும் அதிகபட்ச எண்ணிக்கையிலான Qubit-க்கு இடையில் பொருந்தவில்லை. அதிகபட்ச எண்ணிக்கையிலான Qubitகளைக் கணக்கிடுவதற்குப் பயன்படுத்தப்படும் Python குறியீட்டிற்கும், கிடைக்கக்கூடிய நினைவகத்தின் அடிப்படையில் அதிகபட்ச எண்ணிக்கையிலான Qubitகளுக்கான இயக்க நேர சோதனைக்கு பயன்படுத்தப்படும் C++ குறியீட்டிற்கும் இடையிலான பொருந்தாத காரணத்தினால் இது ஏற்பட்டது. இது சரியானது, எனவே இயல்புநிலையாக இப்போது கிடைக்கக்கூடிய அனைத்து கணினி நினைவகத்திலும் பொருந்தக்கூடிய சுற்றுகளை இயக்க Aer பின்தளத்தில் அனுமதிக்கும். திருத்துவது #1114
எந்த மாற்றங்களும் இல்லை
Ignis 0.5.2¶
எந்த மாற்றங்களும் இல்லை
Aqua 0. 8. 2¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்கி 0. 12. 0¶
முன்னுரை¶
:meth:` qiskit.preers.ibmq.IBMQBackend.run ` method now takes one or more :class:` ~ qiskit.circuit.QuantumCircuit ` or :class:` ~ qiskit.pulse.Schedule . Use of :class: ~ qiskit.QasmQobj ` and :class:` ~ qiskit.Qobj.PulseQobj ` is now deprecated. இயங்கும் கட்டமைப்பு விருப்பங்கள், போன்றவற்றின் எண்ணிக்கை, :meth:` ~ qiskit.preers.ibmq.IBMQBackend.run ` method, or the :meth:` qiskit.preers.ibmq.IBMQBackend.set_options ` method. முன்னாள் வேலைகளுக்கான ஒரு முறை அமைப்பாக பயன்படுத்தப்படுகிறது, மற்றும் பின்னணியில் அனுப்பப்பட்ட அனைத்து வேலைகளுக்கான பின்னணி. இரண்டு இடங்களிலும் ஒரு விருப்பத்தேர்வு அமைக்கப்பட்டால், :meth:` ~ qiskit.देगा என்ற மதிப்பு அமைக்கப்பட்டுள்ளது.
IBM Quantum credentials இப்போது ` ` qiskitrc ` ` கோப்பிலிருந்து 'ibmq' ஆரம்பித்தல் மட்டுமே ஏற்றப்படுகின்றன.
புதிய அம்சங்கள்¶
இந்த வெளியீட்டில் பைதான் 3.9 ஆதரவு சேர்க்கப்பட்டுள்ளது. நீங்கள் தற்பொழுது Qiskit IBMQ வழங்குபவர் பைதான் 3.9 பயன்படுத்தி இயக்கலாம்.
: meth: qiskit.providers.ibmq.AccountProvider.backends இப்போது ஒரு புதிய அளவுரு` min_num_qubits` ஐக் கொண்டுள்ளது, இது குறைந்தபட்ச எண்ணிக்கையிலான குவிட்களால் வடிகட்ட உங்களை அனுமதிக்கிறது.
qiskit.providers.ibmq.IBMQBackend.run()method now takes one or moreQuantumCircuitorSchedule. Runtime configuration options, such as the number of shots, can be set via either therun()method, or theqiskit.providers.ibmq.IBMQBackend.set_options()method. The former is used as a one-time setting for the job, and the latter for all jobs sent to the backend. If an option is set in both places, the value set inrun()takes precedence. For example:from qiskit import IBMQ, transpile from qiskit.test.reference_circuits import ReferenceCircuits provider = IBMQ.load_account() backend = provider.get_backend('ibmq_vigo') circuits = transpile(ReferenceCircuits.bell(), backend=backend) default_shots = backend.options.shots # Returns the backend default of 1024 shots. backend.set_options(shots=2048) # All jobs will now have use 2048 shots. backend.run(circuits) # This runs with 2048 shots. backend.run(circuits, shots=8192) # This runs with 8192 shots. backend.run(circuits) # This again runs with 2048 shots.
: class: qiskit.providers.ibmq.experiment.Experiment இல் இப்போது மூன்று கூடுதல் பண்புக்கூறுகள் உள்ளன,` ஹப்`, குழு, மற்றும்` திட்டம்`, அவை பரிசோதனையை உருவாக்க பயன்படும் வழங்குநரை அடையாளம் காணும்.
ஒரு வேலையைப் பயன்படுத்தி சமர்ப்பிக்கும் போது நீங்கள் இப்போது ஒரு `` சோதனை_ஐடி`` ஐ ஒதுக்கலாம்: மெத்: qiskit.providers.ibmq.IBMQBackend.run. ஒரே பரிசோதனையைச் சேர்ந்த வேலைகளின் தொகுப்பை ஒன்றிணைக்க இந்த புதிய புலத்தைப் பயன்படுத்தலாம். மெத்: qiskit.providers.ibmq.IBMQBackendService.jobs` முறையும் `` பரிசோதனை_ஐடி`` மூலம் வடிகட்டலை அனுமதிக்க புதுப்பிக்கப்பட்டது.
:class:` qiskit.रोज़ी. Ibmq.experiment.Experiment ` தற்போது இரண்டு கூடுதல் குணங்கள் கொண்டது:
செங்குத்து அளவு: பரிசோதனை பகிர்ந்துகொள்ளும் அளவு பகிர்ந்தளிக்கப்படுகிறது. இது புதுப்பிக்கலாம்.
உரிமையாளர்: ஆய்வு செய்யப்பட்ட பயனரின் அடையாளம். இது சேவையகத்தால் அமைக்கப்பட்டு புதுப்பிக்கப்படாது.
முறை: மெத்: qiskit.providers.ibmq.experimentervice.ExperimentService.experiment`s இப்போது ஹப்`,` குழு`, மற்றும்` திட்டம்` ஆகியவற்றை முக்கிய வார்த்தைகளை வடிகட்டுவதாக ஏற்றுக்கொள்கிறது.
முறைகள்: மெத்: qiskit.providers.ibmq.experiment.ExperimentService.experiment மற்றும்: மெத்:` qiskit.providers.ibmq.experiment.ExperimentService.analysis_results` இப்போது எண்ணைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் `` வரம்பு`` அளவுருவை ஆதரிக்கிறது சோதனைகள் மற்றும் பகுப்பாய்வு முடிவுகள் திரும்பின.
முறை: மெத்: qiskit.providers.ibmq.experimentervice.ExperimentService.experiment இப்போது` விலக்கு_மெயின்` மற்றும்` என்னுடைய_ஒரு` ஆகியவற்றை முக்கிய வார்த்தைகளை வடிகட்டுவதாக ஏற்றுக்கொள்கிறது.
முறை: மெத்: qiskit.providers.ibmq.experimentervice.ExperimentService.experiment`s இப்போது விலக்கு_பொது` மற்றும்` பொது_ஒரு` ஆகியவற்றை முக்கிய வார்த்தைகளை வடிகட்டுவதாக ஏற்றுக்கொள்கிறது.
மீத்: qiskit.providers.ibmq.managed.IBMQJobManager.run இப்போது ஒற்றை: வகுப்பை ஏற்றுக்கொள்கிறது:` ~ qiskit.circuit.QuantumCircuit` அல்லது: வகுப்பு: ~ qiskit.pulse.Schedule அவற்றின் பட்டியலுடன் கூடுதலாக.
தி: func: ~ qiskit.providers.ibmq.least_busy செயல்பாடு இப்போது செயல்படும் ஆனால் இடைநிறுத்தப்பட்ட பின்தளத்தில் தவிர்க்கிறது, அதாவது அவை வேலைகளை ஏற்றுக்கொள்கின்றன, ஆனால் செயலாக்கவில்லை.
நீங்கள் இப்பொழுது ஒரு :class:` ~ qiskit.fmq.job.IBMQJ `. Ibmq.job.IBMQJob `. உதாரணமாக, அப்படியே (எ. கா: Qobj தலைப்பில்).
நீங்கள் இப்பொழுது இரண்டு புதிய முறைகளைப் பயன்படுத்தலாம், :meth:` qiskit.देगा நுழைவுக்குள் ./ibmq.AccountProvider.සේවාවන් ` மற்றும் :meth:` qiskit.देगा என்ன சேவைகள் உங்கள் கணக்கில் கிடைக்கப்பெற்றது மற்றும் ஒரு குறிப்பிட்ட சேவையகத்தின் ஒரு நிகழ்வு கிடைக்கும்.
:meth:` qiskit.preers.ibmq.IBMQBackend.రిஸ்பேஷன் ` முறை இப்பொழுது எப்போதும் உங்களிடம் இல்லையென்றால் எப்போதும் ரீதியான நேரத்தைக் காட்டும்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
முன்பு திருத்தப்பட்ட முறைகள் மற்றும் அம்சங்களின் எண்ணிக்கை நீக்கப்பட்டுள்ளன, உட்பட:
: மெத்: qiskit.providers.ibmq.job.IBMQJob.to_dict
மெத்: `qiskit.providers.ibmq.job.IBMQJob.from_dict
` Qconfig.py ` ஆதரவு
நெறிமுறைகளை சேர்க்காத ப்ராக்ஸி URL களின் பயன்பாடு
முறைகள்: மெத்: qiskit.providers.ibmq.experiment.ExperimentService.experiment மற்றும்: மெத்:` qiskit.providers.ibmq.experiment.ExperimentService.analysis_results` இப்போது எண்ணைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் `` வரம்பு`` அளவுருவை ஆதரிக்கிறது சோதனைகள் மற்றும் பகுப்பாய்வு முடிவுகள் திரும்பின.
IBM Quantum credentials இப்போது ` ` qiskitrc ` ` கோப்பிலிருந்து 'ibmq' ஆரம்பித்தல் மட்டுமே ஏற்றப்படுகின்றன. இது ` qiskitrc ` ` கோப்பை மற்ற செயல்பாடுகளுக்கு பயன்படுகிறது.
தேய்மான குறிப்புகள்¶
:class:இன் பயன்பாடு ~ qiskit.qobj.QasmQobj மற்றும்:class:` ~ qiskit.qobj.PulseQobj` இல்:meth: qiskit.providers.ibmq.IBMQBackend.run முறை இப்போது நீக்கப்பட்டது. :class: ~ qiskit.circuit.QuantumCircuit மற்றும்:class:` ~ qiskit.pulse.Schedule` இப்போது அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
` ` backends ` ` பண்பாடு :class:` qiskit.भविष्य-ibmq.AccountProvider ` ` backend ` ` (sigular) என்று பெயர் மாற்றம் செய்யப்பட்டது. பின்னணி பொருட்களுக்கு, நீங்கள் ` ` backends ` , பயன்படுத்த தொடர முடியும், ஆனால் அது ஒரு எதிர்கால வெளியீட்டில் நீக்கப்படும். :meth: qiskit.देगा நபர். Ibmq.AccountProvider.backends ` method remains unchanged. உதாரணமாக:
backend = provider.backend.ibmq_vigo # This is the new syntax. backend = provider.backends.ibmq_vigo # This is deprecated. backends = provider.backends() # This continues to work as before.
:class:` ~ qiskit.preers.ibmq.job.IBMQJob ` ` client_version ` ` பண்பாடு திருத்தப்பட்டுள்ளது. இருப்பினும், பண்பாட்டு மதிப்பை வாசிக்கலாம்.
`` Validate_qobj`` இன் முக்கிய சொல்: மெத்: qiskit.providers.ibmq.IBMQBackend.run நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இந்த ஸ்கீமா சரிபார்ப்பை நீங்கள் நம்பினால், கிஸ்கிட் / இப்மக்-ஸ்கீமாக்கள் <https://github.com/Qiskit/ibm-quantum-schemas> _ இலிருந்து ஸ்கீமாக்களை இழுத்து, அதனுடன் உங்கள் பேலோடுகளை நேரடியாக சரிபார்க்க வேண்டும்.
பிழை திருத்தங்கள்¶
வேலை சமர்ப்பிப்பு பாதி வழியில் தோல்வியுற்றால், `` உருவாக்குதல்`` நிலையில் ஒரு வேலையை விடக்கூடிய சிக்கலை சரிசெய்கிறது.
பாரம்பரிய u1, u2 மற்றும் u3 ஆகியவை பின்தளத்தில் அடிப்படை வாயில்களில் சேர்க்கப்படாவிட்டால், ஜூப்பிட்டர் பின்தளத்தில் விட்ஜெட்டைப் பயன்படுத்துவது தோல்வியடையும் சிக்கலை சரிசெய்கிறது. திருத்தங்கள் # 844 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/844>
ஒரு குழந்தை செயல்முறைக்கு `` IBMQRandomService`` உதாரணத்தை அனுப்பும்போது எழுப்பப்படும் எல்லையற்ற சுழற்சியை சரிசெய்கிறது.
சேவையகம் பிழைக் குறியீட்டை வழங்கினால் `` டைப் எர்ரர்`` எழுப்பப்படும் சிக்கலை சரிசெய்கிறது, ஆனால் பதில் தரவு எதிர்பார்த்த வடிவத்தில் இல்லை.
கிஸ்கிட் 0.23.3¶
Terra 0.16.4¶
எந்த மாற்றங்களும் இல்லை
எ இ அர் 0.7.5¶
முன்னுரை¶
This release is a bugfix release that fixes compatibility in the precompiled binary wheel packages with numpy versions < 1.20.0. முந்தைய வெளியீடு 0.7.4 ஒரு வழியில் பிணைப்பு கட்டப்பட்டது என்று ஒரு வழி 1.20.0 என்று தேவைப்படும் இது இப்போது நீக்கப்பட்டுள்ளது, அதனால் precompiled binary wheel தொகுப்புகள் எந்த எண் பொருத்தமான பதிப்புடன் பணிபுரிந்து கொள்ளும்.
Ignis 0.5.2¶
எந்த மாற்றங்களும் இல்லை
Aqua 0. 8. 2¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்குபவர் 0.11.1¶
எந்த மாற்றங்களும் இல்லை
கிஸ்கிட் 0.23.5¶
Terra 0.16.4¶
முன்னுரை¶
இந்த வெளியீடு ஒரு பிழைத்திருத்த வெளியீடாகும், இது முதன்மையாக நம்பி 1.20.0 உடன் பொருந்தக்கூடிய தன்மையை சரிசெய்கிறது. இந்த எண்ணற்ற வெளியீடு பைத்தானின் எண் வகைகளுக்கான (`` np.int`` -> `` int``, `` np.float`` -> `` மிதவை`, முதலியன) மற்றும் அவற்றின் பயன்பாடு ஆகியவற்றிற்கான உள்ளூர் மாற்றுப்பெயர்களை நீக்கியது. கிஸ்கிட்டில் உள்ள மாற்றுப்பெயர்கள் ஏராளமான தேய்மான எச்சரிக்கைகள் வெளியேற்றப்பட்டன. இந்த வெளியீடு இதை சரிசெய்கிறது, எனவே அந்த நீக்குதல் எச்சரிக்கைகள் இல்லாமல் நீங்கள் கிஸ்கிட்டை எண்ணற்ற 1.20.0 உடன் இயக்க முடியும்.
எ இ அர் 0.7.4¶
பிழை திருத்தங்கள்¶
எண்ணற்ற 1.20.0 உடன் பொருந்தக்கூடிய தன்மையை சரிசெய்கிறது. இந்த எண்ணற்ற வெளியீடு பைத்தானின் எண் வகைகளுக்கான (`` np.int`` -> `` int``, `` np.float`` -> `` மிதவை`, முதலியன) மற்றும் அவற்றின் பயன்பாடு ஆகியவற்றிற்கான உள்ளூர் மாற்றுப்பெயர்களை நீக்கியது. கிஸ்கிட் ஏரில் உள்ள மாற்றுப்பெயர்கள் ஏராளமான தேய்மான எச்சரிக்கைகள் வெளியேற்றப்பட்டன. இந்த வெளியீடு இதை சரிசெய்கிறது, எனவே நீங்கள் கிஸ்கிட் ஏரை 1.20.0 உடன் எண்ணற்ற 1.20.0 உடன் இயக்க முடியும்.
Ignis 0.5.2¶
முன்னுரை¶
This release is a bugfix release that ప్రధానంగా fixes compatibility with numpy 1.20.0. இது பைதான் 3.9 க்கு ஆதரவு உள்ளிடும் முதல் வெளியீடாகும். முந்தைய வெளியீடுகள் (0.5.0 மற்றும் 0.5.1 உட்பட) பைதான் 3.9 உடன் பணியாற்றினார் ஆனால் இந்த பொதி மெட்டாடா இதில் இது குறிக்கவில்லை, மற்றும் அந்த வெளியீடுகளுக்கான மேம்பட்ட சோதனைகள் இல்லை. இந்த விடுதலை நீக்குகிறது மற்றும் பைதான் 3.9 (3.6, 3.7, மற்றும் 3.8) இல் சோதிக்கப்பட்டது.
பிழை திருத்தங்கள்¶
` networkx <https://networkx.org/>` __ (_) தற்போது சார்பாக பட்டியலிடப்பட்டுள்ளது. இது முன்பு :mod:` qiskit.ignis.verification.topological_codes ` module but was not නිවැරදිව listed as a depdendency as a depdendency as qiskit-terra also requires networkx and is a depdency of ignis so it would always be installed in practice. எனினும் இது தேவையாகத் தேவையாகத் தேவையாகத் தேவையாகத் தேவையான குசிக்ஸ்-டெரா (qiskit-terra) வெளியீடுகளுக்கான தேவையாகத் தேவைப்படுகிறது. பதிப்பு தேவைகளுக்கு இடையிலான ஒரு எதிர்காணி எதிர்மையை சரியாக பட்டியலிடும் வகையில் இது சரியாக உள்ளது.
Aqua 0. 8. 2¶
IBM Q வழங்குபவர் 0.11.1¶
எந்த மாற்றங்களும் இல்லை
கிஸ்கிட் 0.23.4¶
டெரா 0.16.3¶
பிழை திருத்தங்கள்¶
0.16.2 இல் அறிமுகப்படுத்தப்பட்ட ஒரு சிக்கல் சரி செய்யப்பட்டது, இது இயங்கும் போது பிழைகளை ஏற்படுத்தும்: func: q qiskit.compiler.transpile ஒரு சுற்றுக்கு 1 குவிட் வாயில்கள் மற்றும் ஒரு குவிட் மீது மட்டுமே செயல்படும் கேட் அல்லாத அறிவுறுத்தல்
எ இ அர் 0.7.3¶
எந்த மாற்றங்களும் இல்லை
லிக்னிஸ் 0.5.1¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.8.1¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்குபவர் 0.11.1¶
எந்த மாற்றங்களும் இல்லை
Qiskit 0.23.3¶
டெரா 0.16.2¶
புதிய அம்சங்கள்¶
இந்த வெளியீட்டில் பைதான் 3.9 ஆதரவு சேர்க்கப்பட்டுள்ளது. நீங்கள் தற்பொழுது Qiskit Ibmq வழங்குபவர் பைதான் 3.9 பயன்படுத்தி இயக்கலாம்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
வகுப்பு: வர்க்கம்: ~ qiskit.library.standard_gates.x.MCXGrayCode இப்போது` num_ctrl_qubits 3 3 ஆகவும்,` num_ctrl_qubits 4 என்றால் 4` `` C3XGate`` ஐ உருவாக்கும். இது முந்தைய செயல்பாட்டுக்கு கூடுதலாக: வர்க்கத்தின் எந்த முறைகளுக்கும்: 'qiskit.library.standard_gates.x.MCXGate`, `` num_ctrl_bits`` 1 எனில், `` CXGate`` உருவாக்கப்பட்டது, 2 எனில், `` சி.சி.எக்ஸ் கேட்`` உருவாக்கப்பட்டது.
பிழை திருத்தங்கள்¶
துடிப்பு: py: class: ~ qiskit.pulse.instructions.Delay இன் அறிவுறுத்தல்கள் இப்போது இவ்வாறு வெளிப்படையாக கூடியிருக்கின்றன: class:` ~ qiskit.qobj.PulseQobjInstruction` பொருள்கள்: வகுப்பில் சேர்க்கப்பட்டுள்ளன: q qiskit.qobj.PulseQobj வெளியீடு : func: `~ qiskit.compiler.assemble.
முன்னதாக, நாம் புறக்கணிக்கலாம்: py: class: ~ qiskit.pulse.instructions.Delay இன் அறிவுறுத்தல்கள் a: class:` ~ qiskit.pulse.Schedule` இன் ஒரு பகுதியாக: func: ~ qiskit.compiler.assemble :class: ~ qiskit.qobj.PulseQobj பொருள்களில் நேரம் வெளிப்படையாக இருந்தது. ஆனால், இப்போது pulse gates, ஒரு தாமதத்தை மட்டுமே நாங்கள் திட்டமிடக்கூடிய சூழ்நிலைகள் உள்ளன, மேலும் தாமதத்தை உள்ளடக்குவது தாமதத்தை அகற்றும்.
தனிப்பயன் கேட் அளவுத்திருத்தங்களுடன் கூடிய சுற்றுகள் இப்போது ஒவ்வொரு சுற்று அளவுத்திருத்தத்தின் காலங்களையும் வெளிப்படையாக வழங்காமல் டிரான்ஸ்பைலருடன் திட்டமிடலாம்.
The
BasisTranslatorandUnrollerpasses, in some cases, had not been preserving the global phase of the circuit under transpilation. This has been fixed.ஒரு பிழை:func: qiskit.pulse.builder.frequency_offset, அங்கு` compensate_phase` ஒரு காரணியாக அமைக்கப்பட்டபோது:math:` 2 pi` சேர்க்கப்பட்ட கட்டத்தில் இருந்து காணவில்லை.
:class:` ~ qiskit.circuit.QuantumCircuit ` method :meth:` ~ qiskit.circuit.QuantumCircuit.Repit.QuantumCircuit.Repe`. If a circuit with global phase is appended to another circuit, the global phase is currently not propagated. சிமோலேட்டர்கள் இதை கவனிக்கின்றனர், இல்லையென்றால், இல்லையென்றால் பல முறை பயன்படுத்தப்படுகிறது. இது :meth:` ~ qiskit.circuit.QuantumCircuit.QuantumCircuit.QuantumCircuit.QuantumCircuit.ref க்கு முன்னால், மறுபடியும் மறுபடியும் மறுபடியும் மறுபடியும் மறுபடியும் கூடுதலாக.
பிழையை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.quantum_info.SparsePauliOp, அங்கு ஒரு குறிப்பிட்ட பைதான் அல்லாத பில்டினால் பெருக்கினால் நம்பி ஸ்கேலர் வகைகள் தவறான மதிப்புகளை அளித்தன. திருத்தங்கள் # 5408 <https://github.com/Qiskit/qiskit-terra/issues/5408> __
ஹெலிங்கர் நம்பகத்தன்மையின் வரையறை முந்தைய கணிப்பிலிருந்து சரி செய்யப்பட்டது: கணிதம்: 1-எச் (பி, கியூ) முதல்: கணிதம்: [1-எச் (பி, கியூ) ^ 2] ^ 2 இது மூலைவிட்ட அடர்த்தி மெட்ரிக்குகளாக P, Q இன் குவாண்டம் நிலை நம்பகத்தன்மைக்கு சமம்.
CX வாயில்களின் எண்ணிக்கை 3-கட்டுப்படுத்தப்பட்ட X வாயில், :class:` ~ qiskit.circuit.library.C3XGate `. Compiled and optimized in the ` U CX ` அடிப்படையில், இப்போது மட்டுமே 14 CX மற்றும் 16 U வாயுக்கள் மட்டுமே 20 மற்றும் 22 இன் பதிலாக பயன்படுத்தப்படுகின்றன.
ஜூப்டர் பின்னணி விட்ஜெட் அல்லது :meth:` qiskit.tools.backend_monitor ` ஐ பயன்படுத்தும் இசையை பரிசோதிக்கிறது. பின்னணி அடிப்படையிலான வாயுக்கள் பாரம்பரிய u1, u2, மற்றும் u3 ஆகியவை இல்லை.
இயங்கும் போது: func: qiskit.compiler.transpile என்பது ஒற்றை உறுப்புடன் கூடிய சுற்றுகளின் பட்டியலில், ஒரு பட்டியலுக்குப் பதிலாக ஒரு சுற்றுக்குத் திரும்பப் பயன்படுத்தப்படும் செயல்பாடு. இப்போது, எப்போது: func: qiskit.compiler.transpile ஒரு பட்டியலுடன் அழைக்கப்படுகிறது, அந்த பட்டியலில் ஒரு உறுப்பு இருந்தாலும் அது ஒரு பட்டியலைத் தரும். # 5260 <https://github.com/Qiskit/qiskit-terra/issues/5260> __ ஐக் காண்க.
from qiskit import * qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) qc.measure_all() transpiled = transpile([qc]) print(type(transpiled), len(transpiled))
<class 'list'> 1
எ இ அர் 0.7.3¶
புதிய அம்சங்கள்¶
இந்த வெளியீட்டில் பைதான் 3.9 ஆதரவு சேர்க்கப்பட்டுள்ளது. நீங்கள் தற்பொழுது Qiskit Aer மூலத்திலிருந்து கட்டமைக்காமல் பைதான் 3.9 பயன்படுத்தி இயக்கலாம்.
பிழை திருத்தங்கள்¶
அமைப்பில் சிக்கலை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator அடிப்படை வாயில்கள்` " முறை " மற்றும் " சத்தம்_மாடல் " விருப்பங்களை ஒன்றாகப் பயன்படுத்தும் போது, அவற்றைப் பயன்படுத்தி உருவாக்கப்பட்ட சிமுலேட்டருடன் பயன்படுத்தும் போது: மெத் : `~ qiskit.providers.aer.QasmSimulator.from_backend. இப்போது பட்டியலிடப்பட்ட அடிப்படை வாயில்கள் பின்தளத்தில் உள்ளமைவு, உருவகப்படுத்துதல் முறை மற்றும் இரைச்சல் மாதிரி அடிப்படை வாயில்கள் ஆதரிக்கும் வாயில்களின் குறுக்குவெட்டாக இருக்கும். இரைச்சல் மாதிரி அடிப்படை வாயில்கள் மற்றும் சிமுலேட்டர் அடிப்படை வாயில்கள் வெட்டுவது காலியாக இருந்தால் எச்சரிக்கை பதிவு செய்யப்படும்.
அமைப்பில் சிக்கலை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator அடிப்படை வாயில்கள்` " முறை " மற்றும் " சத்தம்_மாடல் " விருப்பங்களை ஒன்றாகப் பயன்படுத்தும் போது, அவற்றைப் பயன்படுத்தி உருவாக்கப்பட்ட சிமுலேட்டருடன் பயன்படுத்தும் போது: மெத் : `~ qiskit.providers.aer.QasmSimulator.from_backend. இப்போது பட்டியலிடப்பட்ட அடிப்படை வாயில்கள் பின்தளத்தில் உள்ளமைவு, உருவகப்படுத்துதல் முறை மற்றும் இரைச்சல் மாதிரி அடிப்படை வாயில்கள் ஆதரிக்கும் வாயில்களின் குறுக்குவெட்டாக இருக்கும். இரைச்சல் மாதிரி அடிப்படை வாயில்கள் மற்றும் சிமுலேட்டர் அடிப்படை வாயில்கள் வெட்டுவது காலியாக இருந்தால் எச்சரிக்கை பதிவு செய்யப்படும்.
பிழைகளை சரிசெய்கிறது: மெத்: ~ qiskit.providers.aer.noise.NoiseModel.from_backend மற்றும்: meth:` ~ qiskit.providers.aer.QasmSimulator.from_backend` where: attr: ~ qiskit.providers.aer. அடிப்படை வாயில் தொகுப்பு ` ['ஐடி', 'ஆர்.எஸ்', 'எஸ்.எக்ஸ்', 'எக்ஸ்', 'சிஎக்ஸ்'] `` ஐபிஎம்யூ சாதனங்களுக்கு NoiseModel.basis_gates` தவறாக அமைக்கப்பட்டது. இப்போது சத்தம் மாதிரியில் எப்போதும் பின்தளத்தில் அடிப்படை வாயில்கள் போன்ற அடிப்படை வாயில்கள் இருக்கும், அந்த அறிவுறுத்தல்கள் சத்தம் மாதிரியில் பிழைகள் உள்ளதா இல்லையா என்பதைப் பொருட்படுத்தாமல்.
QasmSimulator யின் மாட்ரிக்ஸ் உற்பத்தி மாநில முறையில் தட்டை பயன்படுத்தும்போது ஒரு பிழை நீக்கு.
லிக்னிஸ் 0.5.1¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.8.1¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்குபவர் 0.11.1¶
எந்த மாற்றங்களும் இல்லை
கிஸ்கிட் 0.23.3¶
டெரா 0.16.1¶
எந்த மாற்றங்களும் இல்லை
எ இ அர் 0.7.3¶
புதிய அம்சங்கள்¶
CMake கொடியை ` ` DISABLE_CONAN ` ` (default= ` ` OFF ` `) சேர். மூலத்திலிருந்து நிறுவி, ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `. இது ஒரு சூழல் மாறாக ` DISABLE_CONAN ` `, இது CMake கொடியை மேல் எடுத்துக் கொள்ளும். இது AER கட்டுவதற்கு அதிகாரப்பூர்வை அளிக்கவில்லை. இப்படி, பயனர் அனைத்து தேவையான நூலகங்களையும், ஒத்திசைவு கோப்புகளையும் வழங்குவதற்கு பொறுப்பேற்றது.
பிழை திருத்தங்கள்¶
ஒரு பிழை நீக்கப்பட்ட OpenMP கொள்கையை அமைக்கும் போது உண்மையில் அமைக்கப்பட்டிருக்கும்.
லிக்னிஸ் 0.5.1¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.8.1¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்குபவர் 0.11.1¶
எந்த மாற்றங்களும் இல்லை
கிஸ்கிட் 0.23.1¶
டெரா 0.16.1¶
பிழை திருத்தங்கள்¶
தாமதங்களுடன் கட்டப்பட்ட செல்லுபடியாகும் சுற்றுகளுக்கு இயக்கத்தில் பிழை எறியப்பட்ட ஒரு சிக்கல் சரி செய்யப்பட்டது.
Qelib1.inc யில் 'c4x' இன் QASM வரையறையை C4XGate க்கு நிலையான நூலகம் வரையறையை பொருந்துவதற்கு திருத்தப்பட்டது.
குவாண்டம் சேனல்களுக்கு கழிப்பதில் ஒரு பிழையை சரி செய்கிறது: கணிதம்: A - B எங்கே: கணிதம்:` B` என்பது ஒரு: வகுப்பு: ~ qiskit.quantum_info.Operator பொருள். ஆபரேட்டர் பிரதிநிதித்துவத்தில் உள்ள மேட்ரிக்ஸுக்கு நிராகரிப்பு பயன்படுத்தப்பட்டது, இது குவாண்டம் சேனல் பிரதிநிதித்துவத்தில் நிராகரிக்கப்படுவதற்கு சமமானதல்ல.
வழியை மாற்றுகிறது: மெத்: ~ qiskit.quantum_info.states.statevector.Statevector._evolve_instruction பல பதிவேடுகளுடன் ஒரு அறிவுறுத்தலின் வழக்கைக் கையாள அணுகல் வினாடிகள்.
எ இ அர் 0.7.1¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
Qiskit-aer உருவாக்க குறைந்தபட்ச சிக்கல் பதிப்பு 3.6 முதல் 3.8 ஆக உயர்ந்தது. GPU பதிப்பு x86_64 CPUல் இயங்கும் ஆதரவு AVX2 கட்டளைகளில் இயங்கும் ஆதரவைப் பயன்படுத்தி இந்த மாற்றம் தேவைப்பட்டது.
பிழை திருத்தங்கள்¶
ஜி.பீ.யூ ஆதரவுடன் qiskit-aer இப்போது AVX2 அறிவுறுத்தல்கள் இல்லாத x86_64 CPU களுடன் கணினிகளில் வேலை செய்யும். முன்னதாக, ஏ.வி.எக்ஸ் 2 அறிவுறுத்தல்கள் இருந்தால் மட்டுமே ஜி.பீ.யூ தொகுப்பு இயங்கும். திருத்தங்கள் `# 1023
பிழையை சரிசெய்கிறது: வர்க்கம்: ~ qiskit.providers.aer.AerProvider ஐப் பயன்படுத்தி திரும்பிய பின்தளத்தில் விருப்பங்கள் அமைக்கப்படுகின்றன: மெத்:` ~ qiskit.providers.aer.QasmSimulator.set_options` வழங்குநரில் சேமிக்கப்பட்டு அடுத்தடுத்த அழைப்புகளுக்கு தொடர்ந்து இருக்கும் to: meth: ~ qiskit.providers.aer.AerProvider.get_backend அதே பெயரிடப்பட்ட பின்தளத்தில். இப்போது ஒவ்வொரு அழைப்பும் மற்றும்: மெத்: ~ qiskit.providers.aer.AerProvider.backends கட்டமைக்கக்கூடிய சிமுலேட்டர் பின்தளத்தில் ஒரு புதிய நிகழ்வை வழங்குகிறது.
பிழை செய்தியில் பிழை தகவல் திரும்பி திரும்பும் போது ஒரு சுற்றுச்சொல் ஆதரிக்கப்படாத உரையாடல் கட்டளையை கொண்டிருக்கும். முன்னதாக சில ஆதரவுப் பரிந்துரைகள் பிழை செய்திகளில் பட்டியலிடப்பட்டன.
++ sx" `` கேட்: வகுப்பு: ~ qiskit.circuit.library.SXGate ஆனது C ++ குறியீட்டில் ஆதரிக்கப்படும் வாயிலாக பட்டியலிடப்படாத பிழையை சரிசெய்யவும்,` matrix_product_state.hp இன் StateOpSet இல்.
`` "சி.எஸ்.எக்ஸ்" ``, `` "கியூ 2" ``, `` "கியூ 3" `` ஆகியவை `` "அடர்த்தி_மாட்ரிக்ஸ்" `` முறை: வகுப்பின்: ~ முறைக்கு ஆதரிக்கப்பட்ட அடிப்படை வாயில்களாக தவறாக பட்டியலிடப்பட்ட பிழையை சரிசெய்யவும். qiskit.providers.aer.QasmSimulator.
MPS இல், apply_kraus ஆனது உள் குவிட்டுகளுக்குப் பதிலாக, அளவுரு குவிட்டுகளில் உள்ளீட்டு பிட்களில் நேரடியாக இயங்குகிறது. எம். பி. எஸ் வழிமுறையில், குவிட்கள் தொடர்ந்து சுற்றி வருகின்றன, எனவே அனைத்து செயல்பாடுகளும் உள் குவிட்டுகளுக்கு பயன்படுத்தப்பட வேண்டும்.
MPS:: sample_measure ஐத் தொடங்கும்போது, நாம் முதலில் qitsm_controller இல் உள்ள அனுமானமாக இருப்பதால், முன்னிருப்புகளை வரிசைப்படுத்த வேண்டும். இது move_all_qubits_to_sorted_ordering முறையைத் தொடங்குவதன் மூலம் செய்யப்படுகிறது. இது மாதிரி_அளவு_பயன்படுத்தல்_அறிவிப்பு_ அளவீட்டில் சரியானது, ஆனால் மாதிரி_அளவு_பயன்படுத்தல்_செயல்பாடுகளில் காணவில்லை.
லிக்னிஸ் 0.5.1¶
பிழை திருத்தங்கள்¶
வர்க்கத்தின் `` "ஆட்டோ" `` முறையை சரிசெய்யவும்: ~ qiskit.ignis.verification.tomography.TomographyFitter ,: class:` ~ qiskit.ignis.verification.tomography.StateTomographyFitter`, மற்றும்: class: ~ qiskit.ignis.verification.tomography.ProcessTomographyFitter ஐ CVXPY நிறுவப்பட்டிருந்தால் `` "cvx" `` ஐ மட்டுமே பயன்படுத்த * மற்றும் * SCS ஐத் தவிர மூன்றாம் தரப்பு SDP தீர்வி கிடைக்கிறது. ஏனென்றால், எஸ்சிஎஸ் தீர்வி மற்ற தீர்வி முறைகளை விட குறைந்த துல்லியத்தன்மையைக் கொண்டுள்ளது மற்றும் பெரும்பாலும் அடர்த்தி மேட்ரிக்ஸ் அல்லது சோய்-மேட்ரிக்ஸை முழுமையாக நேர்மறையானது அல்ல, மேலும்: func: qiskit.quantum_info.state_fidelity அல்லது: func: உடன் பயன்படுத்தும்போது சரிபார்ப்பில் தோல்வியடைகிறது.
அக்வா 0.8.1¶
0. 8. 1¶
புதிய அம்சங்கள்¶
ஒரு புதிய வழிமுறை சேர்க்கப்பட்டுள்ளது: மூலக்கூறின் சுதந்திரத்தின் வெவ்வேறு அளவுகளில் சாத்தியமான ஆற்றல் மேற்பரப்பைக் கணக்கிடுவதற்கான பிறப்பு ஓப்பன்ஹைமர் ஆற்றல் ஆற்றல் மேற்பரப்பு. வழிமுறை `` BOPESSampler`` என அழைக்கப்படுகிறது. இது முன் வரையறுக்கப்பட்ட ஆற்றல்களின் பகுப்பாய்வு செயல்பாட்டிற்கு சாத்தியமான ஆற்றல் மேற்பரப்பை பொருத்துவதற்கான செயல்பாடுகளை மேலும் வழங்குகிறது. சில விவரங்கள்.
விமர்சனங்கள்¶
பிழை சரிசெய்தலின் விளைவாக `` QAOA`` இல் உள்ள `` ஆரம்ப_நிலையம்`` அளவுரு இப்போது வேறுபட்ட செயலாக்கத்தைக் கொண்டுள்ளது என்பதை அறிந்து கொள்ளுங்கள். முந்தைய செயலாக்கம் பயனர் `` ஆரம்ப_நிலையம்`` ஐ ஹடமார்ட் வாயில்களுடன் தவறாக கலக்கியது. சிக்கல் இப்போது சரி செய்யப்பட்டது. வழங்கப்பட்ட `` ஆரம்ப_நிலையம்`` அளவுருவை உங்கள் குறியீடு பயன்படுத்தாவிட்டால் கவனம் தேவையில்லை.
பிழை திருத்தங்கள்¶
qp_solver இன் optimize_svm முறை சில நேரங்களில் இதுபோன்ற பிழையின் விளைவாக தோல்வியடையும் மதிப்பு பிழை: அளவு 1 இன் வடிவத்தை வடிவமாக மாற்றியமைக்க முடியாது (200,1) இது எல் 2 நெறிமுறை அளவுருவான லாம்ப்டா 2 ஐ சேர்ப்பதன் மூலம் சிக்கலை தீர்க்கிறது, இது இயல்புநிலையாக 0.001 ஆக இருக்கும், ஆனால் இருக்க முடியும் QSVM வழிமுறை வழியாக மாற்றப்பட்டது, தேவைக்கேற்ப, ஒன்றிணைவதை எளிதாக்குகிறது.
DOCplex இன் சமீபத்திய கட்டமைப்பில் `` One_letter_symbol`` என்ற முறை `` VarType`` இலிருந்து அகற்றப்பட்டது, இது அக்வாவை இந்த பதிப்போடு பொருந்தாது. எனவே இந்த முறையைப் பயன்படுத்துவதற்குப் பதிலாக, அக்வா தேர்வுமுறை தொகுதியில் மாறி வகைகளின் வெளிப்படையான வகை சோதனை அறிமுகப்படுத்தப்பட்டுள்ளது.
:மெத் `~ க்கிஸ்கிட்.அக்வா.ஓபெராடோர்ஸ்.ஸ்டேட் _ fns.DictStateFn.sample () `. உண்மை யானா அம்பிலிட்டுட்ட் -ஐ மட்டுமே கையாள முடியும், ஆனால் சிக்கலான அம்பிலிட்டுட்ட் -ஐ கையாள இது செய்யப்பட்டது. மேலும் விவரங்களுக்காக <https://github.com/Qiskit/qiskit-aqua/issues/1311>`#1311.
ட்ராட்டர் வகுப்பு கட்டுப்பாட்டில் மறுபடியும் பயன்படுத்தவில்லை. மேலும் விவரங்களுக்காக <https://github.com/Qiskit/qiskit-aqua/issues/1317>`#1317.
ஒரு எழுப்பு AquaError if :class 'Kit qiskit.aqua.operators.converters.CircuitSampler ` வெற்று ஆபரேட்டரின் மாதிரிகள். மேலும் விவரங்களுக்காக <https://github.com/Qiskit/qiskit-aqua/issues/1321>`#1321.
: meth: ~ qiskit.aqua.operators.legacy.WeightedPauliOperator.to_opflow () குணகங்கள் சிக்கலான எண்களாக இருக்கும்போது சரியான ஆபரேட்டரைத் தருகிறது. மேலும் விவரங்களுக்கு # 1381 <https://github.com/Qiskit/qiskit-aqua/issues/1381>.
குவாண்டம் இன்ஸ்டான்ஸில் மட்டுமே aerக்கு கட்டுப்படுத்துவதற்குப் பதிலாக பின்தளத்தில் சிமுலேட்டர்கள் நொய்ஸ்மாடல் ஆதரவை சரிபார்க்கட்டும்.
குவாண்டம் இன்ஸ்டான்ஸ்
transpileமுறையில் பாஸ்மேனேஜரை சரியாகக் கையாள, அதன்runமுறை இருந்தால் அதை அழைக்கவும்.மிஃஸ்ஸ் கஸ்டம் பிழை` ` initial_state ` ` இன் 'QAOA' ஹடமார்ட் வாயில்கள் சரி செய்யப்பட்டுள்ளன. பயன்படுத்துபவர்கள் இனிஷியல்_ ஸ்டேட் எதுவும் வழங்கப்படாவிட்டால் இது QAOA இன் செயல்பாட்டை மாற்றாது. தேர்வுமுறை முடிவுகள் வேறுபடக்கூடும் என்பதால் உங்கள் செயல்பபாடும், QAOA ஐயூம்
initial_stateஅளவுருவுடன் இருக்குமாறு கவனம் செலுத்தப்பட வேண்டும்.முன் 'seed_simulator=0' 'QuantumInstance' எந்த சீயிட்டும் அமைக்கவில்லை. இது மதிப்பு 0 ஐ மட்டுமே பாதிக்கிறது. இது சரி செய்யப்பட்டது.
IBM Q வழங்குபவர் 0.11.1¶
புதிய அம்சங்கள்¶
: class: qiskit.providers.ibmq.experiment.Experiment இல் இப்போது மூன்று கூடுதல் பண்புக்கூறுகள் உள்ளன,` ஹப்`, குழு, மற்றும்` திட்டம்`, அவை பரிசோதனையை உருவாக்க பயன்படும் வழங்குநரை அடையாளம் காணும்.
முறைகள்: மெத்: qiskit.providers.ibmq.experiment.ExperimentService.experiment மற்றும்: மெத்:` qiskit.providers.ibmq.experiment.ExperimentService.analysis_results` இப்போது எண்ணைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் `` வரம்பு`` அளவுருவை ஆதரிக்கிறது சோதனைகள் மற்றும் பகுப்பாய்வு முடிவுகள் திரும்பின.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
முறைகள்: மெத்: qiskit.providers.ibmq.experiment.ExperimentService.experiment மற்றும்: மெத்:` qiskit.providers.ibmq.experiment.ExperimentService.analysis_results` இப்போது எண்ணைக் கட்டுப்படுத்த உங்களை அனுமதிக்கும் `` வரம்பு`` அளவுருவை ஆதரிக்கிறது சோதனைகள் மற்றும் பகுப்பாய்வு முடிவுகள் திரும்பின.
பிழை திருத்தங்கள்¶
வேலை சமர்ப்பிப்பு பாதி வழியில் தோல்வியுற்றால், `` உருவாக்குதல்`` நிலையில் ஒரு வேலையை விடக்கூடிய சிக்கலை சரிசெய்கிறது.
ஒரு குழந்தை செயல்முறைக்கு `` IBMQRandomService`` உதாரணத்தை அனுப்பும்போது எழுப்பப்படும் எல்லையற்ற சுழற்சியை சரிசெய்கிறது.
Qiskit 0. 23.0¶
டெரா 0.16.1¶
முன்னுரை¶
0.16.0 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழை திருத்தங்கள் ஆகியவை அடங்கும். இந்த வெளியீட்டில் வரும் அம்சங்கள் பின்வருமாறு:
திட்டமிடப்பட்ட சிர்குய்ட் அறிமுகம், சிர்குய்ட் செயல்பாடுகளின் நேரம் மற்றும் சீரமைப்பைக் கட்டுப்படுத்த காலதாமதம் பயன்படுத்தப்படலாம்.
குவாண்டம் சர்க்குய்ட் கோட்பாடு ஒவ்வொன்றும் பாரம்பரிய செயல்பாடுகளான ஆரக்கிள்போன்றவை.
வெவ்வேறு யூலர் அடிப்படையிலும் கட்டம் + சதுர-ரூட் (எக்ஸ்) அடிப்படையிலும் ஒற்றை குபிட் சுழற்சிகளை தொகுத்து மேம்படுத்தும் திறன்(அதாவது` ` பி ',' ஸ் எக்ஸ் ']) ` ` ['யு 1', 'யு2', 'யு3'] ` `.
கண்காணிப்பு: மெத்: ~ கிஸ்கிட்.சர்க்யூட்.குவாண்டம்சர்க்யூட். குளோபல்_ கட்டம்` அதன் மேல் :வகுப்பு :` ~ கிஸ்கிட்.சர்க்யூட்.குவாண்டம்சர்க்யூட் ` cவகுப்பு மூலம் நீட்டிக்கப்பட்டுள்ளது :மொட் :` ~ கிஸ்கிட். ற்றன்ச்பிளெர் , :மொட் : ~ கிஸ்கிட்.குவாண்டம்_யின்போ , அன்ட் :மொட் : ~கிஸ்கிட்.அஸ்ஸம்ப்ளேர் ` மொடூல்ஸ் , அத்துடன் அடிப்படை ஏர் மற்றும் ஏர் சிமுலேட்டர்கள். தனிநபர் மற்றும் மாநில வெக்டர் சில்லேர்ஸ் இப்போது உலகளாவிய காலநிலை-சரியான தனிமங்கள் மற்றும் மாநில வெக்டார்களை திருப்பி வருகின்றது.
மேலும் இந்த வெளியீடு குறிப்பிடத்தக்க முக்கியத்துவம், பைதான் 3.5 இனி ஆதரவளிக்கவில்லை. நீங்கள் கிஸ்கிட் டெர்ராவுடன் பைதான் 3.5, 0.15.2 பயன்படுத்தினால், வேலை செய்யும்.
புதிய அம்சங்கள்¶
உலகளாவிய ஆர் வாயுக்கள் :மொட் :` கிஸ்கிட்.சர்க்யூட்.லைப்ரரி . இதில் உலகளாவிய ஆர் வாயில் (:கிளாஸ் : ~ கிஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் ), உலகளாவிய ஆர் எக்ஸ் (:கிளாஸ்: ~ கிஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் எக்ஸ் ) மற்றும் உலகளாவிய ஆர் வ்ஹை (:கிளாஸ் : ~ ஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் வ்ஹை ) வாயில்கள் :கிளாஸ் : ~ ஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் ` வாயில், மற்றும் உலகளாவிய ஆர் ஸிட் ( :கிளாஸ் :` ~ கிஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் ஸிட்`) என்பது :கிளாஸ் :` ~ கிஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் ` வாயுக்கள். உலகளாவிய ஆர் வாயுக்கள் ஒரே நேரத்தில் ஒரு எண்ணிக்கையில் வரையறுக்கப்பட்டு, ஒவ்வொரு குறும்படத்தில் ஆர் வாயுக்களின் நேரடியாக செயல்படுகிறது.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit, QuantumRegister import numpy as np num_qubits = 3 qr = QuantumRegister(num_qubits) qc = QuantumCircuit(qr) qc.compose(GR(num_qubits, theta=np.pi/3, phi=2*np.pi/3), inplace=True)
ஒரு :class: 'qiskit.circuit.QuantumCircuit` ஐ உருவாக்கும் :class:` q qiskit.circuit.QuantumRegister` 3 qubits மற்றும் ஒரு :class: ~ qiskit.circuit.library.RGate ஒரு கோணத்தில்:math: theta = frac{pi}{3} Bloch spheres-ன் xy- planeல் ஒரு கோணத்தை உருவாக்குகிறது \(\phi = \frac{2\pi}{3}\) `ஒவ்வொரு qubitலும் x-axis உடன்.
சர்க்யூட் டிராயருக்கான `` mpl`` பின்தளத்தில் `` iqx`` என்ற புதிய வண்ணத் திட்டம் சேர்க்கப்பட்டுள்ளது :func: qiskit.visualization.circuit_drawer மற்றும் :meth:` qiskit.circuit.QuantumCircuit.draw`. இது ஐபிஎம் குவாண்டம் எக்ஸ்பீரியன்ஸ் இணையதளத்தில் சர்க்யூட் அ மைப்பாளரின் அதே வண்ணத் திட்டத்தைப் பயன்படுத்துகிறது. இப்போது 3 வண்ணத் திட்டங்கள் உள்ளன - `` இயல்புநிலை``, `` iqx``, மற்றும் `` bw``.
வண்ணத் திட்டத்தைத் தேர்ந்தெடுக்க இரண்டு வழிகள் இங்கே. முதலாவது, பயன்படுத்துபவர் உள்ளமைவு கோப்பைப் பயன்படுத்துவது, இரண்டாவதாக `` ~ /.qiskit`` கோப்பகத்தில், `` [Default] `` தலைப்பின் கீழ் `` settings.conf`` கோப்பில், பயன்படுத்துபவர் உள்ளிடலாம் ` `` iqx`` வண்ணத் திட்டத்தைத் தேர்ந்தெடுக்க circ_mpl_style = iqx`.பயன்படுத்தலாம்.
இரண்டாவது வழி
{'name': 'iqx'}styleகுவார்க்கில்QuantumCircuit.drawமுறைக்கு அல்லது `` சர்க்யூட்_ டிராயர்`` செயல்பாட்டில் சேர்ப்பது. இரண்டாவது வழி settings.conf கோப்பில் உள்ள அமைப்பை மேலெழுதும். உதாரணத்திற்கு:from qiskit.circuit import QuantumCircuit circuit = QuantumCircuit(2) circuit.h(0) circuit.cx(0, 1) circuit.measure_all() circuit.draw('mpl', style={'name': 'iqx'})
சர்க்யூட் டிராயருக்கான `` ஸ்டைல்`` குவார்க்கில் :func: qiskit.visualization.circuit_drawer மற்றும் :meth:` qiskit.circuit.QuantumCircuit.dra`` `` டிஸ்ப்ளாக்கலர்`` புலத்தை `` எம்.பி.எல்`` பின்தளத்தில் இப்போது கேட் வண்ணம் மற்றும் ஒவ்வொரு கேட் வகைக்கும் உரை வண்ணம் இரண்டையும் `` (கேட்_ கலர், உரை_ வண்ணம்) `` வடிவத்தில் உள்ளிட அனுமதிக்கிறது. மாறுபட்ட உரை வண்ணங்களுடன் ஒளி மற்றும் இருண்ட வாயில் வண்ணங்களைப் பயன்படுத்த இது அனுமதிக்கிறது. பயனர்கள் இன்னும் கேட் நிறத்தை மட்டுமே அமைக்க முடியும், இந்நிலையில் `` கேடெக்ஸ்ட் கலர்`` புலம் பயன்படுத்தப்படும். கேட் வண்ணங்களை எந்தவொரு கேட் வகைகளுக்கும் `` ஸ்டைல்`` டிக்டில் அமைக்கலாம், ஒன்று முதல் முழு டிஸ்ப்ளே கலர்` டிக்ட் வரை. உதாரணத்திற்கு:
from qiskit.circuit import QuantumCircuit circuit = QuantumCircuit(1) circuit.h(0) style_dict = {'displaycolor': {'h': ('#FA74A6', '#000000')}} circuit.draw('mpl', style=style_dict)
அல்லது
style_dict = {'displaycolor': {'h': '#FA74A6'}} circuit.draw('mpl', style=style_dict)
தாமதங்களுடன் மீண்டும் மீண்டும் துடிப்பு வரிசையை எழுதுவதற்கு வசதியாக துடிப்பு கட்டடத்தில் (: mod: qiskit.pulse.builder) இரண்டு சீரமைப்பு சூழல்கள் சேர்க்கப்படுகின்றன.
func: qiskit.pulse.builder.align_equispaced சூழலில் துடிப்பு அட்டவணைகளுக்கு இடையில் சம நீளத்துடன் தாமதங்களை செருகும்.
: func: qiskit.pulse.builder.align_func துடிப்பு நிலையின் மேம்பட்ட கட்டுப்பாட்டை வழங்குகிறது. இந்த சூழல் ஐ-வது துடிப்பின் ஒரு பகுதியளவு ஒருங்கிணைப்பைக் கணக்கிட்டு, சூழலுக்குள் பருப்புகளை சீரமைக்கக்கூடிய ஒரு அழைப்பை எடுக்கிறது. இது டைனமிகல் டிகூப்பிளிங்கின் குறியீட்டை எளிதாக்குகிறது.
ரன் உள்ளமைவின் கீழ்: வகுப்பு: ~ qiskit.qobj.QasmQobj வகுப்பில்` rep_delay` அளவுரு சேர்க்கப்பட்டுள்ளது ,: வகுப்பு:` ~ qiskit.qobj.QasmQobjConfig`. நிரல் செயலாக்கங்களுக்கு இடையிலான நேரத்தைக் குறிக்க இந்த அளவுரு பயன்படுத்தப்படுகிறது. வகுப்பு: ~ qiskit.providers.models.BackendConfiguration முறை: மெத்:` ~ qiskit.providers.models.BackendConfiguration.rep_delay_range` வழங்கிய பின்தளத்தில் இருந்து இது தேர்ந்தெடுக்கப்பட வேண்டும். ஒரு மதிப்பு பின்தளத்தில் இயல்புநிலையாக வழங்கப்படாவிட்டால் ,: attr: qiskit.providers.models.BackendConfiguration.default_rep_delay, பயன்படுத்தப்படும். `` rep_delay`` என்பது பின்தளத்தில் மட்டுமே செயல்படும், இது மாறும் மறுபடியும் நேரத்தை அனுமதிக்கும். இதை: class: ~ qiskit.providers.models.BackendConfiguration property: attr:` ~ qiskit.providers.models.BackendConfiguration.dynamic_reprate_enabled` உடன் இதைச் சரிபார்க்கலாம்.
`` qobj_schema.json`` இன் JSON ஸ்கீமா கோப்பு: mod: qiskit.schemas QASM Qobj களுக்கான விருப்ப உள்ளமைவு சொத்தாக` rep_delay` ஐ சேர்க்க புதுப்பிக்கப்பட்டுள்ளது.
`` பின்தளத்தில்_அமைவு_ஸ்கீமா .ஜ்சன்`` இந்த ஜ்சன் திட்ட கோப்பு: mod: qiskit.schemas ஒரு QASM பின்தளத்தில் உள்ளமைவுக்கான விருப்ப பண்புகளாக` டைனமிக்_ரெபரேட்_எனபிள்`,` ரெப்_டேலே_ரேஞ்ச்` மற்றும்` இயல்புநிலை_ரெப்_டேலே` ஆகியவற்றைச் சேர்க்க புதுப்பிக்கப்பட்டுள்ளது. பேலோட்.
ஒரு புதிய ஒப்பீட்டை கடந்து, :class:` qiskit.transpiler.passes.TemplateOptimization . இந்த கடவுச்சொல் ` arXiv: 1909.05270 <https://arxiv.org/pdf/1909.05270.pdf> _ (_) சுற்றுப்பாதையில் அனைத்து பொருத்தமான அதிகபட்ச போட்டிகளையும், ` arXiv: 1909.05270 <https://arxiv.org/pdf/1909.05270.pdf> ` (_) இல் விவரிக்கும் ஒரு வார்ப்புருவை பயன்படுத்துகிறது.
இந்த புதிய மின்சாரத்தை செயற்படுத்துவதற்கு ஒரு புதிய கூறு, ` ` template_circuits ` , சேகரிப்பு நூலகத்துக்கு சேர்க்கப்பட்டது (:mod: qiskit.circuit.library ). This new module contains all the Toffoli circuit templates used in the :class: ~ qiskit.transpiler.passes.TemplateOptimization `.
இந்த புதிய பாஸ் தற்போது முன்னமைக்கப்பட்ட பாஸ் மேலாளர்களில் சேர்க்கப்படவில்லை (:mod: qiskit.transpiler.preset_passmanagers), இதைப் பயன்படுத்த நீங்கள் ஒரு தனிப்பயனை உருவாக்க வேண்டும்:class:` ~ qiskit.transpiler.PassManager` .
வழங்குநர்கள் இடைமுகத்தின் புதிய பதிப்பு சேர்க்கப்பட்டது. இந்த புதிய இடைமுகம்: mod: qiskit.providers இல் காணப்படுகிறது, இது ஒரு புதிய பதிப்பு பொறிமுறையை வழங்குகிறது, இது இடைமுகத்தில் மாற்றங்களை காலப்போக்கில் இணக்கமான முறையில் நடக்க உதவும். புதிய இடைமுகம் ஏற்கனவே உள்ள வழங்குநர்களை நகர்த்துவதற்கு எளிமையாக இருக்க வேண்டும், ஏனெனில் இது வெளிப்படையான பதிப்பைத் தவிர பெரும்பாலும் ஒரே மாதிரியாக இருக்கும்.
வெளிப்படையாக பதிப்பு செய்யப்பட்ட சுருக்க வகுப்புகளைத் தவிர, புதிய இடைமுகத்திற்கான முக்கிய மாற்றங்கள்: வர்க்கம்: ~ qiskit.providers.BackendV1 முறை: மெத்:` ~ qiskit.providers.BackendV1.run` இப்போது ஒரு: வகுப்பு: ~ qiskit.circuits.QuantumCircuit அல்லது: class: ~ qiskit.pulse.Schedule பொருள்` Qobj` பொருட்களுக்கு பதிலாக உள்ளீடுகளாக. அந்த விருப்பங்களுடன் செல்ல இப்போது ஒரு பின்தளத்தில் வகுப்பின் ஒரு பகுதியாக உள்ளது, இதனால் பயனர்கள் ஒரு சுற்றுடன் இயங்கும் போது இயக்க நேர விருப்பங்களை உள்ளமைக்க முடியும். இறுதி மாற்றம் என்னவென்றால்: வர்க்கம்: qiskit.providers.JobV1 இப்போது ஒத்திசைவாக அல்லது ஒத்திசைவற்றதாக இருக்கலாம், இதை உள்ளமைப்பதற்கான சரியான உள்ளமைவு மற்றும் முறை வழங்குநரிடம் உள்ளது, ஆனால் எந்த மரணதண்டனை மாதிரியை வெளிப்படையாக வெளிப்படுத்த இடைமுக ஹூக் புள்ளிகள் உள்ளன `` ஜாப்வி 1`` சுருக்க வகுப்பில் வேலை இயங்குகிறது.
ஒரு புதிய குவார்க், `` இடம்``, செயல்பாட்டில் சேர்க்கப்பட்டுள்ளது: func: qiskit.result.marginal_counts. உள்ளடக்கங்கள் ஓரங்கட்டப்பட்டதா அல்லது புதிய நகல் திரும்பப் பெறப்படுகிறதா என்பதைக் கட்டுப்படுத்த இந்த குவார்க் பயன்படுத்தப்படுகிறது, இதற்கு: வகுப்பு: ~ qiskit.result.Result பொருள் உள்ளீடு. இந்த அளவுரு ஒரு உள்ளீட்டு `` டிக்ட்`` அல்லது: வகுப்பு: ~ qiskit.result.Counts பொருளுக்கு எந்த விளைவையும் ஏற்படுத்தாது.
கிளாசிக்கல் செயல்பாட்டு தொகுப்பின் ஆரம்ப பதிப்பு ,: mod: qiskit.circuit.classicalfunction, சேர்க்கப்பட்டுள்ளது. இது தட்டச்சு செய்யப்பட்ட பைதான் செயல்பாடுகளை தொகுக்க உதவுகிறது (இந்த நேரத்தில் `` Int1`` வகை பிட்களில் மட்டுமே இயங்குகிறது): வர்க்கம்: ~ qiskit.circuit.QuantumCircuit பொருள்கள். உதாரணத்திற்கு:
from qiskit.circuit import classical_function, Int1 @classical_function def grover_oracle(a: Int1, b: Int1, c: Int1, d: Int1) -> Int1: x = not a and b y = d and not c z = not x or y return z quantum_circuit = grover_oracle.synth() quantum_circuit.draw()
q_0: ──■────■────■────o──────────── │ │ │ │ q_1: ──o────o────┼────┼────■────■── │ │ │ │ │ │ q_2: ──o────■────o────┼────■────┼── │ │ │ │ │ │ q_3: ──o────┼────■────┼────■────o── ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐ q_4: ┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├ └───┘└───┘└───┘└───┘└───┘└───┘The parameter
registerless=Falsein theqiskit.circuit.classicalfunction.ClassicalFunctionmethodsynth()creates a circuit with registers refering to the parameter names. For example:quantum_circuit = grover_oracle.synth(registerless=False) quantum_circuit.draw()
d_0: ──■────■────■────o──────────── │ │ │ │ c_0: ──o────o────┼────┼────■────■── │ │ │ │ │ │ b_0: ──o────■────o────┼────■────┼── │ │ │ │ │ │ a_0: ──o────┼────■────┼────■────o── ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐ return_0: ┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├ └───┘└───┘└───┘└───┘└───┘└───┘ஒரு சாதாரண மரபு செயற்கைக்கோள் ஒரே வழி ஒரே வழியே பயன்படுத்தலாம் அதனை ஒரு சுற்றுப்பகுதியை ஏற்றும் போது.
circuit = QuantumCircuit(5) circuit.append(grover_oracle, range(5)) circuit.draw()
┌────────────────┐ q_0: ┤0 ├ │ │ q_1: ┤1 ├ │ │ q_2: ┤2 GROVER_ORACLE ├ │ │ q_3: ┤3 ├ │ │ q_4: ┤4 ├ └────────────────┘`` GROVER_ORACLE`` வாயில் அதன் சிதைவு தேவைப்படும்போது ஒருங்கிணைக்கப்படுகிறது.
circuit.decompose().draw()
q_0: ──■────■────■────o──────────── │ │ │ │ q_1: ──o────o────┼────┼────■────■── │ │ │ │ │ │ q_2: ──o────■────o────┼────■────┼── │ │ │ │ │ │ q_3: ──o────┼────■────┼────■────o── ┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐┌─┴─┐ q_4: ┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├┤ X ├ └───┘└───┘└───┘└───┘└───┘└───┘வளிமண்டலத்தில் ` ` pip install tweedledum ` ` ` ` pip நிறுவனத்தின் மூலம் நிறுவப்பட்டிருக்க முடியும் என்று ` ` tweedledum ` `, ஒரு நூலகம் தேவைப்படுகிறது.
ஒரு புதிய வகுப்பு: வகுப்பு: ஒரு சுற்றுவட்டத்தில் தாமத அறிவுறுத்தலைக் குறிக்கும் qiskit.circuit.Delay சேர்க்கப்பட்டுள்ளது. ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.QuantumCircuit.delay இப்போது சுற்றுகளுக்கு தாமதங்களை எளிதில் சேர்க்க கிடைக்கிறது. இது சுற்று மட்டத்தில் நேர-உணர்திறன் சோதனைகளை (எ.கா. T1 / T2 சோதனை) விவரிக்க உதவுகிறது.
from qiskit import QuantumCircuit qc = QuantumCircuit(1, 1) qc.delay(500, 0, unit='ns') qc.measure(0, 0) qc.draw()
┌────────────────┐┌─┐ q_0: ┤ DELAY(500[ns]) ├┤M├ └────────────────┘└╥┘ c: 1/═══════════════════╩═ 0ஒரு புதிய வகுப்பு: வகுப்பு: ஒரு சுற்றுவட்டத்தில் தாமத அறிவுறுத்தலைக் குறிக்கும் qiskit.circuit.Delay சேர்க்கப்பட்டுள்ளது. ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.QuantumCircuit.delay இப்போது சுற்றுகளுக்கு தாமதங்களை எளிதில் சேர்க்க கிடைக்கிறது. இது சுற்று மட்டத்தில் நேர-உணர்திறன் சோதனைகளை (எ.கா. T1 / T2 சோதனை) விவரிக்க உதவுகிறது.
from qiskit import QuantumCircuit, transpile from qiskit.test.mock.backends import FakeAthens qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) scheduled_circuit = transpile(qc, backend=FakeAthens(), scheduling_method="alap") print("Duration in dt:", scheduled_circuit.duration) scheduled_circuit.draw(idle_wires=False)
Duration in dt: 2016
┌─────────┐ ┌────┐┌─────────┐ q_0 -> 0 ───┤ RZ(π/2) ├────┤ √X ├┤ RZ(π/2) ├──■── ┌──┴─────────┴───┐└────┘└─────────┘┌─┴─┐ q_1 -> 1 ┤ DELAY(160[dt]) ├─────────────────┤ X ├ └────────────────┘ └───┘: func: திட்டமிடப்பட்ட சுற்றுகளின் சிறந்த காட்சிப்படுத்தலுக்கு q qiskit.visualization.timeline_drawer.
ஒரு புதிய பிரிவு: func: qiskit.compiler.afterence மேலும் சேர்க்கப்பட்டுள்ளது, இதன்மூலம் ஒரு திட்டமிடப்பட்ட சுற்றுவட்டத்தை ஒரு: வகுப்பாக மாற்றலாம்:` ~ qiskit.pulse.Schedule` அதை துடிப்பு-இயக்கப்பட்ட பின்தளத்தில் இயக்கக்கூடியதாக மாற்றும்.
from qiskit.compiler import sequence sched = sequence(scheduled_circuit, pulse_enabled_backend)
: Func: ~ qiskit.compiler.schedule புதுப்பிக்கப்பட்டுள்ளது, இதனால் தாமதங்களுடன் சுற்றுகளை திட்டமிட முடியும். தாமதத்துடன் ஒரு சுற்று திட்டமிட இப்போது இரண்டு பாதைகள் உள்ளன:
qc = QuantumCircuit(1, 1) qc.h(0) qc.delay(500, 0, unit='ns') qc.h(0) qc.measure(0, 0) sched_path1 = schedule(qc.decompose(), backend) sched_path2 = sequence(transpile(qc, backend, scheduling_method='alap'), backend) assert pad(sched_path1) == sched_path2
இதனுக்கான வெளியீட்டுக் குறிப்புகள் மற்றும் ஆவணங்களைப் பார்க்கவும்: func: ~ qiskit.compiler.transpile மற்றும்: func:` ~ qiskit.compiler.afterence` மற்ற பாதையில் உள்ள விவரங்களுக்கு.
க்ரோவரின் தேடல் வழிமுறை மற்றும் குவாண்டம் அலைவீச்சு பெருக்கம் / மதிப்பீடு ஆகியவற்றில் பயன்படுத்தப்படும் க்ரோவர் ஆபரேட்டரை உருவாக்க: வகுப்பு: ~ qiskit.circuit.library.GroverOperator ஐ சுற்று நூலகத்தில் (: mod:` qiskit.circuit.library`) சேர்த்துள்ளார். ஒரு சுற்று வடிவத்தில் ஆரக்கிள் வழங்கப்படுகிறது, `` க்ரோவர் ஆபரேட்டர்`` க்ரோவர் ஆபரேட்டரை உருவாக்குகிறது. வீச்சு பெருக்கத்திற்காக இதைப் பொதுமைப்படுத்தவும், ஹடமார்ட் வாயில்களுக்குப் பதிலாக ஒரு பொதுவான ஆபரேட்டரை மாநில தயாரிப்பாகப் பயன்படுத்தவும், `` ஸ்டேட்_இன்`` வாதத்தைப் பயன்படுத்தலாம்.
:class:` ~ qiskit.pulse.InstructionScheduleMap ` முறைகள் :meth:` ~ qiskkit.pulse.InstructionScheduleMap.get ` and :meth:` ~ qiskit.pulse.InstructionScheduleMap.Pop ` முறைகள் இப்போது :class:` ~ qiskit.circuit.ParameterExpression ` instances in addition to numerical values for schedule generator parameters. பொதுவான செயல்பாடு செயல்பாடு என்றால், செயல்பாடு முன் அல்லது செயல்பாடு அழைக்கப்படுவதற்கு முன் வைத்திருக்கலாம். ஜெனரேட்டர் ஒரு :class:` ~ qiskit.pulse.ParametrizedSchedule ` என்றால், வரிசைப்படுத்துவதற்கு முன் பரிந்துரைக்கப்பட்டிருக்க வேண்டும்.
ஒரு புதிய வகுப்பு: வகுப்பு: ~ qiskit.circuit.library.LinearAmplitudeFunction சுற்று நூலகத்தில் (: mod:` qiskit.circuit.library`) மேப்பிங் (பிஸ்கேவ்) நேரியல் செயல்பாடுகளை குவிட் அலைவீச்சுகளில்,
\[F|x\rகோணம் | 0\rகோணம் = \sqrt {1-f (x)} |x\rகோணம் | 0\rகோணம் + \sqrt {f (x)} |x\rகோணம் | 1\rகோணம்\]வரைபடம் ஒரு கட்டுப்பாடற்ற Pauli Y-rotations and a Taylor approximation, as විස්තර in https://arxiv.org/abs/1806.06893. இந்த சுற்றுப்பொருளின் கணிப்பொறி கணிப்பொறி மதிப்பீடுகளின் கணிப்பொறி மதிப்புகளின் கணிப்பொறி மதிப்பை கணக்கிடும்.
The new jupyter magic ` ` monospaced_output ` ` :mod:` qiskit.tools.jupyter ` module. இந்த மந்திரம் ஜூபியர் கடிகார வெளியீட்டு எழுத்துருவை "கூரியர் நியூ", சாத்தியமாக அமைக்கிறது. இந்த மின்னெழுத்துக்களைப் பயன்படுத்தும் போது உரை சுற்றுப்பாதை வரையறுக்கிறது.
import qiskit.tools.jupyter %monospaced_output
ஒரு புதிய டிரான்ஸ்பைலர் பாஸ் ,: வகுப்பு: ~ qiskit.transpiler.passes.Optimize1qGatesDecomposition, சேர்க்கப்பட்டுள்ளது. இந்த டிரான்ஸ்பைலர் பாஸ் தற்போதுள்ள: வர்க்கத்திற்கு மாற்றாகும்: q qiskit.transpiler.passes.Optimize1qGates இது: class:` ~ qiskit.quantum_info.OneQubitEulerDecomposer` வகுப்பைப் பயன்படுத்தி ஒற்றை குவிட் வாயில்களின் சங்கிலியை சிதைத்து எளிமைப்படுத்துகிறது. இந்த முறை எந்த அடிப்படைத் தொகுப்பிற்கும் பொருந்தக்கூடியது: வகுப்பு: ~ qiskit.transpiler.passes.Optimize1qGates u1, u2 மற்றும் u3 க்கு மட்டுமே வேலை செய்கிறது. அடிப்படை தொகுப்பில் u1, u2, அல்லது u3 ஆகியவை அடங்கவில்லையெனில், `` உகப்பாக்கம்_ நிலை`` 1, 2 மற்றும் 3 க்கான இயல்புநிலை பாஸ் நிர்வாகிகள் இந்த புதிய பாஸைப் பயன்படுத்த புதுப்பிக்கப்பட்டுள்ளனர்.
வகுப்பு: ~ qiskit.quantum_info.OneQubitEulerDecomposer இப்போது இரண்டு புதிய அடிப்படைகளை ஆதரிக்கிறது,` 'PSX'` மற்றும்` ' U'`. கட்டமைப்பாளரின் `` அடிப்படை`` குவார்க் மூலம் இவற்றைக் குறிப்பிடலாம். இது மேட்ரிக்ஸை ஒரு சுற்றுக்குள் சிதைக்கும்: வர்க்கம்: ~ qiskit.circuit.library.PGate மற்றும்: class:` ~ qiskit.circuit.library.SXGate` `` PSX'`, மற்றும்: class:` `` 'U'`` க்கான q qiskit.circuit.library.UGate`.
ஒரு புதிய முறை: மெத்: ~ கிஸ்கிட் .ட்ரான்ஸ்பைலர்.பாஸ்மேனேஜர்.ரெமோவ்: வகுப்பு:` கிஸ்கிட் .ட்ரான்ஸ்பைலர்.பாஸ்மேனேஜர்` வகுப்பில் சேர்க்கப்பட்டுள்ளது. இந்த முறை ஒரு: வகுப்பிலிருந்து பாஸை அகற்ற உதவுகிறது: ~ கிஸ்கிட். டிரான்ஸ்பைலர். பாஸ் மேலாளரின் உதாரணம். இது போன்ற குறியீடுகளில் இது செயல்படுகிறது: மெத்: `~ கிஸ்கிட். டிரான்ஸ்பைலர். பாஸ் மேலாளர். பதிலாக. எடுத்துக்காட்டாக,: கிளாஸ் c: `~ கிஸ்கிட் ஐ அகற்ற. டிரான்ஸ்பைலர் .பாஸ். தேர்வுமுறை நிலை 1 இல் பயன்படுத்தப்படும் பாஸ் மேலாளரிடமிருந்து மீட்டமை ஜீரோ ஸ்டேட் பாஸை அகற்று:
from qiskit.transpiler.preset_passmanagers import level_1_pass_manager from qiskit.transpiler.passmanager_config import PassManagerConfig pm = level_1_pass_manager(PassManagerConfig()) pm.draw()
[0] FlowLinear: UnrollCustomDefinitions, BasisTranslator [1] FlowLinear: RemoveResetInZeroState [2] DoWhile: Depth, FixedPoint, Optimize1qGates, CXCancellation
`` [RemoveResetInZeroState`` உடன் `` [1] `` நிலை இதை நீக்கலாம்:
pass_manager.remove(1) pass_manager.draw()
[0] FlowLinear: UnrollCustomDefinitions, BasisTranslator [1] DoWhile: Depth, FixedPoint, Optimize1qGates, CXCancellation
நிகழ்தகவு விநியோகங்களை குவிட் பெருக்கங்களில் ஏற்ற பல வகுப்புகள்; : class: ~ qiskit.circuit.library.UniformDistribution ,: class:` ~ qiskit.circuit.library.NormalDistribution`, மற்றும்: class: q qiskit.circuit.library.LogNormalDistribution ஆகியவை சுற்று நூலகத்தில் சேர்க்கப்பட்டன (: mod: qiskit.circuit.library). இயல்பான மற்றும் பதிவு-இயல்பான விநியோகம் ஒற்றுமையற்ற மற்றும் பன்முகப்படுத்தப்பட்ட விநியோகங்களை ஆதரிக்கிறது. குவாண்டம் அலைவீச்சு மதிப்பீடு பயன்படுத்தப்படும் நிதிகளில் உள்ள பயன்பாடுகளுக்கு இந்த சுற்றுகள் மையமாக உள்ளன.
துடிப்பு வாயில்களுக்கான ஆதரவு: வகுப்பு: ~ qiskit.circuit.QuantumCircuit வகுப்பில் சேர்க்கப்பட்டுள்ளது. இது ஒரு: வர்க்கம்: ~ qiskit.circuit.QuantumCircuit ஐ மேலெழுத (அடிப்படை வாயில்களுக்கு) அல்லது (நிலையான மற்றும் தனிப்பயன் வாயில்களுக்கு) ஒரு: வகுப்பின் வரையறையை குறிப்பிட:` ~ qiskit.circuit.Gate` செயல்பாட்டை நேரத்தின் அடிப்படையில் வன்பொருள் சேனல்கள் முழுவதும் வரிசைப்படுத்தப்பட்ட சமிக்ஞைகள். வேறு வார்த்தைகளில் கூறுவதானால், இது துடிப்பு-நிலை தனிப்பயன் கேட் அளவுத்திருத்தங்களை வழங்குவதற்கான விருப்பத்தை செயல்படுத்துகிறது.
சுற்றுகள் முன்பு போலவே கட்டப்பட்டுள்ளன. உதாரணத்திற்கு:
from qiskit import pulse from qiskit.circuit import QuantumCircuit, Gate class RxGate(Gate): def __init__(self, theta): super().__init__('rxtheta', 1, [theta]) circ = QuantumCircuit(1) circ.h(0) circ.append(RxGate(3.14), [0])
பின்னர், வாயிலுக்கான அளவுத்திருத்தத்தை: class: ~ qiskit.circuit.QuantumCircuit முறை: மெத்:` ~ qiskit.circuit.QuantumCircuit.add_calibration` ஐப் பயன்படுத்தி பதிவு செய்யலாம்: இது ஒரு: வகுப்பு: `~ qiskit.pulse.Schedule `வரையறை மற்றும் இது வரையறுக்கப்பட்டுள்ள குவிட்ஸ் மற்றும் அளவுருக்கள்
# Define the gate implementation as a schedule with pulse.build() as custom_h_schedule: pulse.play(pulse.library.Drag(...), pulse.DriveChannel(0)) with pulse.build() as q1_x180: pulse.play(pulse.library.Gaussian(...), pulse.DriveChannel(1)) # Register the schedule to the gate circ.add_calibration('h', [0], custom_h_schedule) # or gate.name string to register circ.add_calibration(RxGate(3.14), [0], q1_x180) # Can accept gate
முன்னதாக, இந்த செயல்திறன் மட்டுமே முழுமையான பழுப்பு நேரத்தினால் பயன்படுத்தமுடியும். கூடுதலாக, சுற்றுச்சூழல் இப்போது உங்கள் தனிப்பயன் வரையறைகளுடன் பின்னணிக்கு சமர்ப்பிக்கலாம் (பின்னணி ஆதரவைப் பொறுத்து).
பால்ஸ் வாயில்களுடன் மின்சாரம் இன்னும் ஒரு :class:` ~ qiskit.pulse.Schedule ` கூடுதலாக :func:` ~ qiskit.compiler.schedule ` செயல்கூறு பயன்படுத்தப்படுகிறது.
கலிப்ரேட் வாயில் வழக்கமான தொடர் பயிற்சி முறையை பயன்படுத்தி transpiled முடியும்:
transpiled_circuit = transpile(circ, backend)
இடமாற்றம் செய்யப்பட்ட சுற்று அளவீடு செய்யப்பட்ட வாயில்களை அசல் சுற்றுக்கு ஒத்ததாக இருக்கும், மேலும் அவை அடிப்படை வாயில்களுக்கு அவிழ்க்காது.
: வகுப்பை பிரிப்பதற்கான ஆதரவு: ~ qiskit.qobj.PulseQobj பொருள்கள்: func:` qiskit.assembler.disassemble` செயல்பாட்டில் சேர்க்கப்பட்டுள்ளன. உதாரணத்திற்கு:
from qiskit import pulse from qiskit.assembler.disassemble import disassemble from qiskit.compiler.assemble import assemble from qiskit.test.mock import FakeOpenPulse2Q backend = FakeOpenPulse2Q() d0 = pulse.DriveChannel(0) d1 = pulse.DriveChannel(1) with pulse.build(backend) as sched: with pulse.align_right(): pulse.play(pulse.library.Constant(10, 1.0), d0) pulse.shift_phase(3.11, d0) pulse.measure_all() qobj = assemble(sched, backend=backend, shots=512) scheds, run_config, header = disassemble(qobj)
ஒரு புதிய குவார்க், `` coord_type`` இல் சேர்க்கப்பட்டுள்ளது: func: qiskit.visualization.plot_bloch_vector. உருவாக்கப்பட்ட காட்சிப்படுத்தலில் ப்ளொச் கோளத்தில் திசையனின் நிலைப்பாட்டை விவரிக்கும் உள்ளீட்டு அளவுருவுக்கு பயன்படுத்தப்படும் ஒருங்கிணைப்பு அமைப்பை மாற்ற இந்த குவார்க் உதவுகிறது. இந்த புதிய குவார்க்குக்கு 2 ஆதரவு மதிப்புகள் உள்ளன, `` 'கார்ட்டீசியன்`` (இயல்புநிலை மதிப்பு) மற்றும்
' கோள வடிவம். `` Coord_type`` kwarg `` 'கோள வடிவமாக` அமைக்கப்பட்டால், எடுக்கப்பட்ட அளவுருக்களின் பட்டியல் `` [r, theta, phi] `` எங்கே `` r`` ஆரம், ` தீட்டா என்பது + z திசையிலிருந்து வரும் சாய்வு, மற்றும்` ஃபை என்பது + x திசையிலிருந்து வரும் அசிமுத் ஆகும். உதாரணத்திற்கு:from numpy import pi from qiskit.visualization import plot_bloch_vector x = 0 y = 0 z = 1 r = 1 theta = pi phi = 0 # Cartesian coordinates, where (x,y,z) are cartesian coordinates # for bloch vector plot_bloch_vector([x,y,z])
plot_bloch_vector([x,y,z], coord_type="cartesian") # Same as line above
# Spherical coordinates, where (r,theta,phi) are spherical coordinates # for bloch vector plot_bloch_vector([r, theta, phi], coord_type="spherical")
துடிப்பு: py: class: ~ qiskit.pulse.Schedule பொருள்கள் இப்போது இதைப் பயன்படுத்துவதை ஆதரிக்கின்றன: py: class:` ~ qiskit.circuit.ParameterExpression` அளவுருக்கள் பொருள்கள்.
உதாரணத்திற்கு:
from qiskit.circuit import Parameter from qiskit import pulse alpha = Parameter('⍺') phi = Parameter('ϕ') qubit = Parameter('q') amp = Parameter('amp') schedule = pulse.Schedule() schedule += SetFrequency(alpha, DriveChannel(qubit)) schedule += ShiftPhase(phi, DriveChannel(qubit)) schedule += Play(Gaussian(duration=128, sigma=4, amp=amp), DriveChannel(qubit)) schedule += ShiftPhase(-phi, DriveChannel(qubit))
அளவுரு ஒதுக்கீடு: மெத்: ~ qiskit.pulse.Schedule.assign_parameters முறை வழியாக செய்யப்படுகிறது:
schedule.assign_parameters({alpha: 4.5e9, phi: 1.57, qubit: 0, amp: 0.2})
வெளிப்பாடுகள் மற்றும் பகுதி ஒதுக்கீடும் செயல்படுகின்றன, அதாவது:
beta = Parameter('b') schedule += SetFrequency(alpha + beta, DriveChannel(0)) schedule.assign_parameters({alpha: 4.5e9}) schedule.assign_parameters({beta: phi / 6.28})
ஒரு புதிய காட்சிப்படுத்தல் செயல்பாடு: func: ~ qiskit.visualization.timeline_drawer: mod:` qiskit.visualization` தொகுதிக்கு சேர்க்கப்பட்டது.
உதாரணத்திற்கு:
from qiskit.visualization import timeline_drawer from qiskit import QuantumCircuit, transpile from qiskit.test.mock import FakeAthens qc = QuantumCircuit(2) qc.h(0) qc.cx(0,1) timeline_drawer(transpile(qc, FakeAthens(), scheduling_method='alap'))
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
வகுப்பு: ~ qiskit.circuit.Gate வகுப்பு மற்றும் அதன் துணைப்பிரிவுகளுக்கான கட்டமைப்பாளரின்` அளவுருக்கள்` குவார்க்கை சரிபார்க்கவும். முன்பு அனைத்தும்: வகுப்பு : ~ qiskit.circuit.Gate அளவுருக்கள்: class:` ~ qiskit.circuit.Instruction` வகுப்பில் வரையறுக்கப்பட்ட அனுமதிக்கப்பட்ட வகைகளின் தொகுப்பில் இருக்க வேண்டும். இப்போது ஒரு புதிய முறை ,: மெத்: ~ qiskit.circuit.Gate.validate_parameter ஒரு அளவுரு வகை செல்லுபடியாகுமா இல்லையா என்பதை தீர்மானிக்க பயன்படுத்தப்படுகிறது. துணைப்பிரிவில் இந்த முறையின் வரையறை அதன் பெற்றோரை விட முன்னுரிமை பெறும். முன்னாள்.
முந்தைய தவறான முறைமைகளும், உரையாடல், மற்றும் பண்புகள் ` ` n_ qubits ` ` ` ` ` numberofqubits ` ` நீக்கப்பட்டுள்ளன. இவை 0.13.0 விடுதலை செய்யப்பட்டன. மாற்றங்களின் முழு அமைப்பு:
வகுப்பு
பழைய
புதிய
`` n_qubits
: வகுப்பு: ~ qiskit.circuit.QuantumCircuit
: வகுப்பு: `~ qiskit.quantum_info.Pauli
qubits இன் எண்ணிக்கை
:attr:` ~ qiskit.quantum_info.Pauli.num_qubits `
செயல்கூறு
பழைய ஆர்குமென்ட்
புது ஆர்குமென்ட்
:func:` qiskit.circuit.random.random_circuit `
`` n_qubits
` ` num_qubits ` `
:class:` qiskit.circuit.library.MSGate`
`` n_qubits
` ` num_qubits ` `
ஒரு parameter-ச் செருகுவது :class: ~ qiskit.circuit.Gate instance ஒரு :class:` ~ qiskit.circuit.QuantumCircuit` இப்போது அந்த வாயிலின் நகலை உருவாக்குகிறது, இது circuitகளில் பயன்படுத்தப்படுகிறது. circuitக்குள் செருகப்பட்ட instanceல் மாற்றங்கள் செய்யப்பட்டால், அது இனி circuitல் உள்ள வாயிலில் பிரதிபலிக்காது. ஒற்றை parameter ஆக்கப்பட்ட :class: ~ qiskit.circuit.Gate object-ஐ பல circuitகளில் செருகும்போது சிக்கலை சரிசெய்ய இந்த மாற்றம் செய்யப்பட்டது.
The function :func:` qiskit.result.marginal_counts ` now, by default, does not modify the :class:` qiskit.result.Result ` instance parameter. முன்னதாக, ` ` Result ` ` பொருள் எப்போதும் இடத்தில் மாற்றப்பட்டது. ஒரு புதிய kwarg ` ` inplace ` ` inplace ` :func:` ~ qiskit.result.marginal_counts ` ` inplace=True ` ` அமைக்கப்பட்டிருக்கும் போது முந்தைய நடத்தை பயன்படுத்துகிறது.
The
U3Gatedefinition has been changed to be in terms of theUGateclass. TheUGateclass has no definition. It is therefore not possible to unroll every circuit in terms of U3 and CX anymore. Instead, U and CX can be used for every circuit.Python 3.5 உடன் Qiskit டெர்ராவை இயக்குவதற்கான ஆதரவு நீக்கப்பட்டது. இந்த வெளியீட்டில் இருந்து Qiskit டெர்ராவைப் பயன்படுத்த நீங்கள் இப்போது குறைந்தபட்சம் Python 3.6 ஐப் பயன்படுத்த வேண்டும். நீங்கள் Python 3.5 ஐப் பயன்படுத்துகிறீர்கள் என்றால், வேலை செய்யும் கடைசி பதிப்பு Qiskit டெர்ரா 0.15.2 ஆகும்.
In the
PulseBackendConfigurationin thehamiltonianattributes thevarsfield is now returned in a unit of Hz instead of the previously used GHz. This change was made to be consistent with the units used with the other attributes in the class.The previously deprecated support for passing in a dictionary as the first positional argument to
DAGNodeconstructor has been removed. Using a dictonary for the first positional argument was deprecated in the 0.13.0 release. To create aDAGNodeobject now you should directly pass the attributes as kwargs on the constructor.சர்க்யூட் கேட் முறைகளுக்கான முக்கிய ஆர்குமென்ட்கள் (எடுத்துக்காட்டாக :class: qiskit.circuit.QuantumCircuit.cx)` q`,` ctl* , மற்றும் tgt* , அவை நீக்கப்பட்டன 0.12.0 வெளியீட்டில் அகற்றப்பட்டது. அதற்கு பதிலாக, இந்த முறைகளுக்கு பெயரிடப்பட்ட ஆர்குமென்ட்களாக ` qubit``, `` control_qubit* `` மற்றும் `` target_qubit* `` மட்டுமே பயன்படுத்த முடியும்.
முன்னர் நீக்கப்பட்ட தொகுதி `` கிஸ்கிட். நீட்டிப்புகள். நிலையான`` அகற்றப்பட்டது. 0.14.0 வெளியீட்டிலிருந்து இந்த தொகுதி நீக்கப்பட்டது. அதற்கு பதிலாக: மொட் : qகிஸ்கிட்.சர்க்யூட்.லைப்ரரி `. இதில் உலகளாவிய ஆர் வாயில் (:கிளாஸ் : ~ கிஸ்கிட்.சர்க்யூட்.லைப்ரரி .ஜி ஆர் ), உலகளாவிய ஆர் எக்ஸ் ஐப் பயன்படுத்தலாம். கூடுதலாக, `` கிஸ்கிட். நீட்டிப்புகள். நிலையான`` இல் உள்ள அனைத்து கேட் வகுப்புகளும் இன்னும் இறக்குமதி செய்யப்படுகின்றன: மொட் : கிஸ்கிட். நீட்டிப்புகள்.
`` கிஸ்கிட். நீட்டிப்புகள் தொகுதியில் முன்னர் நீக்கப்பட்ட வாயில்கள். குவாண்டம்_இனிட்டலைசர்``: `` டயகேட்``, யு.சி.ஜி`,` யு.சி.பாலி ரோட்கேட்`,` யூ.சி.ஆர்.ஓ.டி`,` யு.சி.ஆர்.எக்ஸ் கேட்`,` யு.சி.எக்ஸ்`,` யூ.சி.ஆர்.ஜேட்`,` யூ.சி.வி`, `` யூ.சி.ஆர்.ஜேட்கேட்
, ``.சி.சி.ஜேட்நீக்கப்பட்டன. இவை அனைத்தும் 0.14.0 வெளியீட்டில் நீக்கப்பட்டன மற்றும் சுற்று நூலகத்தில் மாற்று வழிகள் உள்ளன (: மொட்: கிஸ்கிட்.சர்க்யூட்.லைப்ரரி).முன்பிருந்த :class: qiskit.circuit.QuantumCircuit கேட் முறை :meth:` ~ qiskit.circuit.QuantumCircuit.iden` அகற்றப்பட்டது. இது 0.13.0 வெளியீட்டில் நீக்கப்பட்டது மற்றும் :meth: ~ qiskit.circuit.QuantumCircuit.i அல்லது :meth:` ~ qiskit.circuit.QuantumCircuit.id` ஐ இதற்குப் பதிலாகப் பயன்படுத்தலாம்.
தேய்மான குறிப்புகள்¶
The use of a
numpy.ndarrayfor a parameter in theparamskwarg for the constructor of theGateclass and subclasses has been deprecated and will be removed in future releases. This was done as part of the refactoring of howparmstype checking is handled for theGateclass. If you have a custom gate class which is a subclass ofGatedirectly (or via a different parent in the hierarchy) that accepts anndarrayparameter, you should define a customvalidate_parameter()method for your class that will return the allowed parameter type. For example:def validate_parameter(self, parameter): """Custom gate parameter has to be an ndarray.""" if isinstance(parameter, numpy.ndarray): return parameter else: raise CircuitError("invalid param type {0} in gate " "{1}".format(type(parameter), self.name))
PiecewiseLinearPauliRotationsஇன் பண்புnum_ancilla_qubitsமற்றும்PolynomialPauliRotationsஎதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக :attr: ~ qiskit.circuit.library.PolynomialPauliRotations.num_ancillas பயன்படுத்தப்பட வேண்டும். :class: ~ qiskit.circuit.QuantumCircuit முறை :meth:` ~ qiskit.circuit.QuantumCircuit.num_ancillas` உடன் ஒத்துப்போக இது செய்யப்பட்டது.The
qiskit.circuit.library.MSGateclass has been deprecated, but will remain in place to allow loading of old jobs. It has been replaced with theqiskit.circuit.library.GMSclass which should be used instead.The
MSBasisDecomposertranspiler pass has been deprecated and will be removed in a future release. Theqiskit.transpiler.passes.BasisTranslatorpass can be used instead.The
QuantumCircuitmethodsu1,u2andu3are now deprecated. Instead the following replacements can be used.u1(theta) = p(theta) = u(0, 0, theta) u2(phi, lam) = u(pi/2, phi, lam) = p(pi/2 + phi) sx p(pi/2 lam) u3(theta, phi, lam) = u(theta, phi, lam) = p(phi + pi) sx p(theta + pi) sx p(lam)
கேட் வகுப்புகள் :class: ~ qiskit.circuit.library.U1Gate , :class:` ~ qiskit.circuit.library.U2Gate` மற்றும் :class: ~ qiskit.circuit.library.U3Gate பழைய வேலைகளை ஏற்ற அனுமதிக்க உள்ளன.
பிழை திருத்தங்கள்¶
The
Resultclass's methodsdata(),get_memory(),get_counts(),get_unitary(), andget_statevector ` will now emit a warning when the ``experiment`()kwarg is specified for attempting to fetch results using either aQuantumCircuitorScheduleinstance, when more than one entry matching the instance name is present in theResultobject. Note that only the first entry matching this name will be returned. Fixes #3207The
qiskit.circuit.QuantumCircuitmethodappend()can now be used to insert one parameterized gate instance into multiple circuits. This fixes a previous issue where inserting a single parameterizedGateobject into multiple circuits would cause failures when one circuit had a parameter assigned. Fixes #4697முன்னதாக :func: qiskit.execute.execute செயல்பாடு ஒரே நேரத்தில் குறிப்பிட``backend`` மற்றும்
pass_managerkwargகள் இரண்டையும் தவறாக அனுமதிக்காது. இது சரி செய்யப்பட்டது, இதனால்backendமற்றும்pass_managerஆகிய இரண்டையும் ஒன்றாக அழைப்பதில் பயன்படுத்தலாம் :func: ~ qiskit.execute.execute. திருத்தங்கள் # 5037 <https://github.com/Qiskit/qiskit-terra/issues/5037> __The
QuantumCircuitmethodunitary()method has been fixed to accept a single integer for theqargargument (when adding a 1-qubit unitary). The allowed types for theqargsargument are nowint,Qubit, or a list of integers. Fixes #4944முன்னதாக, அழைப்பு :meth: ~ qiskit.circuit.library.BlueprintCircuit.inverse இல் ஒரு :class:` ~ qiskit.circuit.library.BlueprintCircuit` object அதன் உள் தரவு பண்பு தொகை இல்லாவிட்டால் தோல்வியடையும். இது சரி செய்யப்பட்டது, இதனால் அழைப்பு :meth: qiskit.circuit.library.BlueprintCircuit.inverse circuitக்கு நேர்மாறாக உருவாக்கும் முன் உள் தரவை விரிவுபடுத்துகிறது. திருத்தம் # 5140 <https://github.com/Qiskit/qiskit-terra/issues/5140> __
ஒரு வெற்று தரவு அகராதியிலிருந்து ஒரு :class: qiskit.result.Counts பொருளை உருவாக்கும்போது ஒரு சிக்கல் சரி செய்யப்பட்டது. இப்போது இது வெற்று :class: ~ qiskit.result.Counts பொருள் உருவாக்கும். பொருள் காலியாக இருக்கும்போது மேலும் விளக்கமான விதிவிலக்கை எழுப்புவதற்கு :meth: ~ qiskit.result.Counts.most_frequent முறையும் புதுப்பிக்கப்பட்டுள்ளது. திருத்தம் # 5017 <https://github.com/Qiskit/qiskit-terra/issues/5017> __
ஒரு :class:ன்
ctrl_stateஐ அமைப்பதில் ஒரு பிழையை சரிசெய்கிறது: ~ qiskit.extensions.UnitaryGate இரண்டு முறை பயன்படுத்தப்படும்; கட்டுப்படுத்தப்பட்ட unitaryக்கான மேட்ரிக்ஸை உருவாக்கியதும், மீண்டும் :meth: ~ qiskit.circuit.ControlledGate.definition முறையின் :class:` qiskit.circuit.ControlledGate` வகுப்பை அழைக்கும் போது. `` Ctrl_state`` அமைப்பால் எந்த விளைவும் இல்லை என்று இதனால் தோன்றும்.முன்னதாக :class: ~ qiskit.circuit.ControlledGate முறை :meth:` ~ qiskit.circuit.ControlledGate.inverse` சில சந்தர்ப்பங்களில்
ctrl_stateஅளவுருவைப் பாதுகாக்காது. இது சரி செய்யப்பட்டது, எனவே :meth: ~ qiskit.circuit.ControlledGate.inverse ஐ அழைப்பது, அதன் வெளியீட்டில்` ctrl_state` மதிப்பைப் பாதுகாக்கும்.சர்க்யூட் டிராயரின் `` எம்.பி.எல்`` வெளியீட்டு பின்தளத்தில் ஒரு பிழை சரி செய்யப்பட்டது: மெத்: qiskit.circuit.QuantumCircuit.draw மற்றும்: func:` qiskit.visualization.circuit_drawer` இது டிராயரை செயலிழக்கச் செய்தால் `` நடை`` குவார்க் ஒரு சரத்திற்கு அமைக்கப்பட்டது. காட்சிப்படுத்தலுக்கான நடை தாளைக் கொண்ட ஒரு JSON கோப்பிற்கான பாதையாக அந்த சரத்தை கருதுவதே சரியான நடத்தை. இது சரி செய்யப்பட்டது, மற்றும் ஸ்டைல் ஷீட்டிற்கான JSON கோப்பை ஏற்ற முடியாவிட்டால் எச்சரிக்கைகள் எழுப்பப்படுகின்றன.
QASM கோப்பை இதன் மூலம் ஏற்றுவதில் பிழை சரி செய்யப்பட்டது: மெத்: ~ qiskit.circuit.QuantumCircuit.from_qasm_file அல்லது: மெத்:` ~ qiskit.circuit.QuantumCircuit.from_qasm_str` ஒரு `` u``, `` கட்டம் ( p) QASM கோப்பில்
, `` sx, அல்லது `` sxdg`` கேட் இருந்தன. திருத்தங்கள் `# 5156ஒரே ஒரு 2-குவிட் செயல்பாட்டைக் கொண்டு வரையறுக்கப்பட்ட ஒரு வாயிலை அவிழ்த்து / சிதைக்கும்போது பதிவேடுகளில் பொருந்தாத ஒரு பிழை சரி செய்யப்பட்டது.
Aer 0.7.0¶
முன்னுரை¶
இந்த 0. 7. 0 விடுதலை பல செயல்திறன் முன்னேற்றங்கள் மற்றும் குறிப்பிடத்தக்க மேம்பாட்டு உரிமைகள் ஆகியவற்றை உள்ளடக்குகிறது, மற்றும் பைதான் 3.5 க்கு ஆதரவு தரும். முக்கிய இடைமுகப்பு மாற்றங்கள் வடிவமைப்புத் துணை பின்னணி, மற்றும் IBMQ பின்னணிகளில் இருந்து முன் வடிவமைக்கப்பட்ட உரையாடல் வடிவமைப்புகள். Noise model an basis gate support has also been extended for most of the Qiskit circuit library standard gates, including new support for 1 and 2-qubit சுழற்சி வாயுக்கள். பெரும்பாலான முன்னுரிமைகளில் SIMD ஆதரவு சேர்க்கும் அடர்த்தி மெட்ரிக்ஸ் மற்றும் ஒருங்கிணைந்த மின்சார முறைமைகளுக்கு, பயன்படுத்தப்பட்ட நினைவகத்தை குறைக்கவும் மற்றும் செயல்திறன் மற்றும் அடர்த்தி மெட்ரிக்ஸ் இன்ட்ரிக்ஸ் ஸ்பெக்ஸ்போஸ் ஆகியவற்றின் செயல்திறனை மேம்படுத்தும், மற்றும் கேரஸ் ஆணைக்குழுவுக்கு ஆதரவு சேர்க்கிறது.
புதிய அம்சங்கள்¶
வகுப்பிற்கான அடிப்படை வாயில் ஆதரவைச் சேர்க்கிறது: qiskit.circuit.Delay இன் அறிவுறுத்தல்: வகுப்பு:` ~ qiskit.providers.aer.StatevectorSimulator` ,: வகுப்பு: ~ qiskit.providers.aer.UnitarySimulator, மற்றும்: class : ~ qiskit.providers.aer.QasmSimulator. உருவகப்படுத்துதலின் போது இந்த வாயில் அடையாள வாயிலாக கருதப்படுகிறது மற்றும் தாமத நீள அளவுரு புறக்கணிக்கப்படுகிறது என்பதை நினைவில் கொள்க.
வகுப்பு , மற்றும் " ஸ்டேட்வெக்டர் " , " அடர்த்தி_மாட்ரிக்ஸ் " , " மேட்ரிக்ஸ்_ உற்பத்தி_நிலையம் " , மற்றும் " நீட்டிக்கப்பட்ட_நிலையாக்கி " முறைகள்: வர்க்கம்: ~ qiskit.providers.aer. QasmSimulator`.
கட்ட வாயிலுக்கு அடிப்படை கேட் ஆதரவைச் சேர்க்கிறது: வகுப்பு: qiskit.circuit.library.PhaseGate: வகுப்பிற்கு:` ~ qiskit.providers.aer.StatevectorSimulator` ,: வகுப்பு: ~ qiskit.providers.aer.StatevectorSimulator, : class: ~ qiskit.providers.aer.UnitarySimulator, மற்றும்` " statevector " , " அடர்த்தி_மாட்ரிக்ஸ் " , " matrix_product_state " , மற்றும் " நீட்டிக்கப்பட்ட_நிலையாக்கி " முறைகள் வகுப்பு: `~ qiskit.providers.aer.QasmSimulator.
கட்டுப்படுத்தப்பட்ட-கட்ட வாயிலுக்கு அடிப்படை வாயில் ஆதரவைச் சேர்க்கிறது: வகுப்பு: qiskit.circuit.library.CPhaseGate: வகுப்பிற்கு:` ~ qiskit.providers.aer.StatevectorSimulator` ,: வகுப்பு: ~ qiskit.providers.aer.StatevectorSimulator `,: வகுப்பு: ~ qiskit.providers.aer.UnitarySimulator`, மற்றும் `` "ஸ்டேட்வெக்டர்" ``, `` "அடர்த்தி_மாட்ரிக்ஸ்" ``, மற்றும் `` "மேட்ரிக்ஸ்_ உற்பத்தி_நிலையம்" `` முறைகள்: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator.
பல கட்டுப்பாட்டு கட்ட வாயிலுக்கு ஆதரவைச் சேர்க்கிறது: வகுப்பு: qiskit.circuit.library.MCPhaseGate: வகுப்பிற்கு:` ~ qiskit.providers.aer.StatevectorSimulator` ,: வகுப்பு: ~ qiskit.providers.aer.UnitarySimulator , மற்றும் `` "ஸ்டேட்வெக்டர்" `` முறை: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator.
கணிதத்திற்கான ஆதரவைச் சேர்க்கிறது \(\sqrt(X)\) gate
qiskit.circuit.library.SXGate: வகுப்பிற்கு :class:` ~ qiskit.providers.aer.StatevectorSimulator` ,:class:~qiskit.providers.aer.UnitarySimulator, மற்றும்:class: ~ qiskit.providers.aer.QasmSimulator.1 மற்றும் 2-குவிட் கிஸ்கிட் சுற்று நூலக சுழற்சி வாயில்களுக்கான ஆதரவைச் சேர்க்கிறது: வகுப்பு: ~ qiskit.circuit.library.RXGate ,: வகுப்பு:` ~ qiskit.circuit.library.RYGate` ,: வகுப்பு: ~ qiskit.circuit. library.RZGate ,: வகுப்பு: ~ qiskit.circuit.library.RGate ,: வகுப்பு:` ~ qiskit.circuit.library.RXXGate` ,: வகுப்பு: ~ qiskit.circuit.library.RYYGate ,: வகுப்பு: ~ qiskit.circuit.library.RZZGate ,: வகுப்பு:` ~ qiskit.circuit.library.RZXGate` க்கு: வகுப்பு: ~ qiskit.providers.aer.StatevectorSimulator ,: வகுப்பு:` ~ qiskit.providers.aer .உனிட்டரி சிமுலேட்டர்`, மற்றும் `` "ஸ்டேட்வெக்டர்" `` மற்றும் `` "அடர்த்தி_மாட்ரிக்ஸ்" `` முறைகள்: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator. #: ../../release_notes.rst:1818
பல கட்டுப்பாட்டு கட்ட வாயிலுக்கு ஆதரவைச் சேர்க்கிறது: வகுப்பு: qiskit.circuit.library.MCPhaseGate: வகுப்பிற்கு:` ~ qiskit.providers.aer.StatevectorSimulator` ,: வகுப்பு: ~ qiskit.providers.aer.UnitarySimulator , மற்றும் `` "ஸ்டேட்வெக்டர்" `` முறை: வர்க்கம்: ~ qiskit.providers.aer.QasmSimulator.
வடிவமைப்பை வடிவமைக்க முடியும். இது ஒவ்வொரு ஒருங்கிணைக்கும் பின்னணி பொருளாக ஒலிக்கோப்பு முறை மற்றும் ஒளி மாதிரி போன்றவற்றை அமைக்க அனுமதிக்கும்.
வகுப்பு: ~ qiskit.providers.aer.QasmSimulator மற்றும்: class:` ~ qiskit.providers.aer.PulseSimulator` ஐ ஒரு: வகுப்பிலிருந்து கட்டமைக்க முடியும்: q qiskit.providers.ibmq.IBMQBackend பின்தளத்தில் பொருள் : மெத்: ~ qiskit.providers.aer.QasmSimulator.from_backend` முறை. வகுப்புக்கு: ~ qiskit.providers.aer.QasmSimulator இது பின்தளத்தில் உள்ளமைவு மற்றும் பண்புகளின் அடிப்படையில் இணைப்பு வரைபடம், அடிப்படை வாயில்கள் மற்றும் அடிப்படை சாதன இரைச்சல் மாதிரியை உள்ளமைக்கும். வகுப்புக்கு: ~ qiskit.providers.aer.PulseSimulator கணினி மாதிரி மற்றும் இயல்புநிலைகள் பின்தளத்தில் உள்ளமைவு, பண்புகள் மற்றும் இயல்புநிலைகளிலிருந்து தானாகவே கட்டமைக்கப்படும்.
எடுத்துக்காட்டாக ஒரு நச்சுவான அடர்த்தி மெட்ரிக்ஸ் பாக்டிரிக்ஸ் பின்னணி ` ` QasmSimulator (method = 'density_matrix', Noe_ model = நுழை_ மாதிரி) ` `, அல்லது ஒரு வர்த்தக மேட்ரிக்ஸ் உற்பத்தி மாநிலமாகும் ` ` QasmSimulator (method = 'matrix_product_state') ` `.
ஒரு நன்மை என்னவென்றால்: ஒரு வகுப்பு: ~ qiskit.providers.aer.PulseSimulator உதாரணம் ஒரு பின்தளத்தில் இருந்து கட்டமைக்கப்பட்டிருப்பது அசல் பின்தளத்தில் மாற்றுவதற்கான ஒரு துளி-மாற்றாக சிறப்பாக செயல்படுகிறது, இது ஒரு சிமுலேட்டர் மற்றும் உண்மையான பின்தளத்தில் மாற்றுவதை எளிதாக்குகிறது, எ.கா. உண்மையான பின்தளத்தில் பயன்படுத்துவதற்கு முன்பு ஒரு சிமுலேட்டரில் குறியீட்டை சோதிக்கும் போது. எடுத்துக்காட்டாக, பின்வரும் குறியீடு-தொகுதியில், வகுப்பு: ~ qiskit.providers.aer.PulseSimulator என்பது` போலிஅர்மோங்க் () பின்தளத்தில் இருந்து உடனடிப்படுத்தப்படுகிறது. எல்லா உள்ளமைவு மற்றும் இயல்புநிலை தரவுகளும் சிமுலேட்டர் நிகழ்வில் நகலெடுக்கப்படுகின்றன, எனவே இது ` அசெம்பிள்``க்கான வாதமாக அனுப்பப்படும்போது, அசல் பின்தளத்தில் வழங்கப்பட்டதைப் போலவே இது செயல்படுகிறது (எ.கா. ஃபேக்அர்மோன்க் இலிருந்து இயல்புநிலைகள் இருக்கும் மற்றும் `` அசெம்பிள்`` ஆல் பயன்படுத்தப்படுகிறது).
armonk_sim = qiskit.providers.aer.PulseSimulator.from_backend(FakeArmonk()) pulse_qobj = assemble(schedules, backend=armonk_sim) armonk_sim.run(pulse_qobj)
மேலிருக்கும் உதாரணம் சிறியதாகக் கூடும் போது, விரிவான 'drop-in replacement' நடவடிக்கை மேலும் சிக்கலான வேலைகளில் உபயோகத்தை மேம்படுத்துவது, எ. கா, எ. கா.
Qobj உலகளாவிய கட்டத்திற்கான ஆதரவை: class: ~ qiskit.providers.aer.StatevectorSimulator ,: class:` ~ qiskit.providers.aer.UnitarySimulator`, மற்றும்: class: ~ qiskit.providers இன் மாநிலவெக்டர் முறைகள் aer.QasmSimulator.
பொதுவான ஒழுங்குபடுத்தும் மாதிரிகளை ஒழுங்குபடுத்துவதால் கேரஸ் (Kraus) முறை (Kraus) முறை (Kraus) முறைமையை சேர்த்துக் கொள்கிறது.
"Statevector" ` and ` density_matrix "` ` density_matrix" என்பது :class:` ~ qiskit.देगा வழிமுறைகளுக்கான நடவடிக்கை மற்றும் அடர்த்தி மாதிரிகளை பயன்படுத்தவும். இது குறியீடுகளின் நினைவக பயன்பாட்டை குறைக்கிறது, முடிவுகளின் ஒரு பெரிய அர்ரே நகலெடுக்கும் செயல்திறனை அளிக்கிறது.
பொது க்ராஸிற்கான ஆதரவைச் சேர்க்கிறது: வர்க்கம்: ~ qiskit.providers.aer.noise.QauntumError கேட் பிழைகள்: வகுப்பில்:` ~ qiskit.providers.aer.noise.NoiseModel` ஐ `` "matrix_product_state" `` முறைக்கு வகுப்பு: ~ qiskit.providers.aer.QasmSimulator.
அடர்த்தி மேட்ரிக்ஸ் ஸ்னாப்ஷாட் அறிவுறுத்தலுக்கான ஆதரவைச் சேர்க்கிறது: வகுப்பு: qiskit.providers.aer.extensions.SnapshotDensityMatrix ஐ` " matrix_product_state " முறை: வகுப்பின் முறை: ~ qiskit.providers.aer.QasmSimulator`.
யூனிடரி மேட்ரிக்ஸ், சூப்பர் ஆபரேட்டர் மேட்ரிக்ஸ் மற்றும் அடர்த்தி மேட்ரிக்ஸ் சிமுலேஷன் முறைகளுக்கு ஸ்டேட்வெக்டர் சிமுலேஷன் முறையின் சிம்டி திசையன்மயமாக்கலை நீட்டிக்கிறது. இது வகுப்பைப் பயன்படுத்தி 2x செயல்திறன் அதிகரிக்கும் பொது உருவகப்படுத்துதலை அளிக்கிறது: ~ qiskit.providers.aer.UnitarySimulator,` " அடர்த்தி_மாட்ரிக்ஸ் " : வர்க்கத்தின் முறை: ~ qiskit.providers.aer.QasmSimulator`, கேட் இணைவு மற்றும் சத்தம் உருவகப்படுத்துதல்.
பைபிண்ட் 11 உடன் சிறந்த ஒருங்கிணைப்பைக் கொண்ட சி ++ குறியீட்டில் தனிப்பயன் திசையன் வகுப்பைச் சேர்க்கிறது. இறுதி சிமுலேட்டர் நிலையின் பைதான் பிணைப்பின் போது நினைவக நகலைத் தவிர்ப்பதன் மூலம்: வர்க்கம்: ~ qiskit.providers.aer.StatevectorSimulator இன் நினைவகத் தேவையை இது கொண்டுள்ளது.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
AER இப்போது சில மாட்ரிக்ஸ் தொடர்பான கணினிகளை செயல்படுத்துவதற்கு பயன்படுகிறது. இது OpenBlas (ஏற்கனவே Linux and Macos සාමාන්ය OpenBlas dsitributions; விண்டோஸ் பதிப்பு AER with AER) அல்லது MacOS இல் ஆரம்ப வரையறையுடன் பகிர்ந்துகொண்டிருக்கும் லாபக் நூலகத்தை பயன்படுத்துகிறது.
Python 3.5 உடன் Qiskit டெர்ராவை இயக்குவதற்கான ஆதரவு நீக்கப்பட்டது. இந்த வெளியீட்டில் இருந்து Qiskit டெர்ராவைப் பயன்படுத்த நீங்கள் இப்போது குறைந்தபட்சம் Python 3.6 ஐப் பயன்படுத்த வேண்டும். நீங்கள் Python 3.5 ஐப் பயன்படுத்துகிறீர்கள் என்றால், வேலை செய்யும் கடைசி பதிப்பு Qiskit டெர்ரா 0.15.2 ஆகும்.
புதுப்பிக்கப்படுவதற்கு முன்னிருப்பு மூலமாகக் கொண்டு வரையறுக்கப்பட்டிருக்கும் விகிதங்கள் :class:` ~ qiskit.வர்கள் மற்றும் :class:` ~ qiskit.देगा நபர். Qasmulator `.
வர்க்கத்தின் `` "அடர்த்தி_மாட்ரிக்ஸ்" `` முறைக்கு: ~ qiskit.providers.aer.QasmSimulator மற்றும்: வர்க்கம்:` ~ qiskit.providers.aer.UnitarySimulator` கேட் இணைவு அதிக சுற்றுகள் கொண்ட சுற்றுகளுக்கு பயன்படுத்தப்படும் 7 குவிட்களை விட.
தனிப்பயன் குவிட் வாசல் மதிப்புகளை `` ஃப்யூஷன்_தெரெஷோல்ட்`` பின்தளத்தில் விருப்பத்தைப் பயன்படுத்தி அமைக்கலாம், அதாவது `` பின்தளத்தில்.செட்_ஆப்ஷன்ஸ் (ஃப்யூஷன்_தெஷோல்ட் = 10)
ஓப்பன்எம்பி குவிட் த்ரெஷோல்ட் அளவுருவின் நடத்தைக்கு பொருந்த, குவிட்டுகளின் எண்ணிக்கை வாசலுக்கு மேலே இருக்கும்போது, வாசலுக்கு சமமாகவோ அல்லது வாசலுக்கு மேலேவோ இருக்கும்போது இணைவு பயன்படுத்த `` ஃப்யூஷன்_தெரெஷோல்ட்`` பின்தளத்தில் விருப்பத்தை மாற்றுகிறது.
தேய்மான குறிப்புகள்¶
: meth: qiskit.providers.aer.noise.NoiseModel.set_x90_single_qubit_gates தனிப்பயன் அடிப்படை வாயில்களுக்கு அன்ரோல் செய்வது கிஸ்கிட் டிரான்ஸ்பைலரில் சேர்க்கப்பட்டுள்ளதால் நீக்கப்பட்டது. எக்ஸ் 90 அடிப்படையிலான இரைச்சல் மாதிரியைப் பயன்படுத்துவதற்கான சரியான வழி சதுர (எக்ஸ்) `` "எஸ்எக்ஸ்" `` அல்லது `` "ஆர்எக்ஸ்" `` வாயில் மற்றும் ஒற்றை-குவிட் கட்ட வாயில்களில் ஒன்றான `` "யு 1" இரைச்சல் மாதிரியில் ``, `` "rx" `` அல்லது `` "ப" ``.
ஸ்னாப்ஷாட் அறிவுறுத்தல்களின் `` மாறுபாடு`` குவார்க் நீக்கப்பட்டது. இந்த செயல்பாடு சத்தம் மாதிரி மாதிரியின் காரணமாக ஸ்னாப்ஷாட்டில் உள்ள மாதிரி மாறுபாட்டைக் கணக்கிட்டது, அளவீட்டு புள்ளிவிவரங்கள் காரணமாக மாறுபாடு அல்ல, எனவே பெரும்பாலும் தவறாகப் பயன்படுத்தப்படுகிறது. சத்தம் மாடலிங் மாறுபாடு தேவைப்பட்டால் ஒற்றை ஷாட் ஸ்னாப்ஷாட்களைப் பயன்படுத்த வேண்டும், எனவே மாறுபாட்டை பிந்தைய செயலாக்கத்தில் கைமுறையாக கணக்கிடலாம்.
பிழை திருத்தங்கள்¶
பிழை: வகுப்பில் பிழைகளை சரிசெய்கிறது: ~ qiskit.providers.aer.StatevectorSimulator இது எப்போதும் AVX2 உடன் கணினிகளில் அல்லது ஒற்றை துல்லியம் அல்லது ஜி.பீ. பின்தளத்தில் விருப்பங்களில் குறிப்பிடப்பட்டுள்ளது.
C++ குறியீட்டில் உள்ள சில-லூப்ஸ் (C++ குறியீடுகள்) உள்ளடக்க உறுப்புகளை குறிப்பிடுவதற்கு பதிலளிக்கும்.
எப்போதும் எப்போதும் நகர்த்தப்படுவதை விட எப்பொழுதும் C++ ல் இருந்து எப்போதும் நகலெடுக்கப்பட்டிருக்கும் ஒரு பிழை நீக்குகிறது. இது நினைவக பயன்பாடு மற்றும் பெரிய மாதிரிகளை அல்லது அடர்த்தி மாட்ரிக்ஸ் ஸான்ஸ்போட் பயன்படுத்தும்போது நினைவகத்தை மேம்படுத்தும்.
நிலைப்படுத்தி சிமுலேட்டரில் சரியான Y எதிர்பார்ப்பு மதிப்பைத் தர மாநில:: ஸ்னாப்ஷாட்_பாலி_எக்ஸ்பால் ஐ சரிசெய்யவும். மேலும் விவரங்களுக்கு # 895 <https://github.com/Qiskit/qiskit-aer/issues/895> ஐப் பார்க்கவும்.
கட்டுப்பாட்டின் செயல்பாடு செயல்பாடு (பொருட்கள்) இலவச செயல்பாடுகளுக்கு மேலாக அமைக்கப்பட்டுள்ளது. மற்ற விஷயங்களுள் இவற்றை பெரும்பான்மையானவற்றில் பயன்படுத்தப்படுவதற்கு அனுமதிக்கிறது.
: Class: q qiskit.providers.aer.StatevectorSimulator மற்றும்: class:` ~ qiskit.providers.aer.UnitarySimulator` க்கான கிடைக்காத நினைவக சோதனைகளைச் சேர்க்கவும். ஒரு சுற்றில் உள்ள குவிட்களின் எண்ணிக்கையை உருவகப்படுத்த தேவையான நினைவகம் கணினியின் கிடைக்கக்கூடிய நினைவகத்தை விட அதிகமாக இருந்தால் இது விதிவிலக்கு.
Ignis 0.5.0¶
முன்னுரை¶
இந்த வெளியீட்டில் எதிர்பார்ப்பு மதிப்பு அளவீட்டு பிழை தணிப்பு, குவாண்டம் தொகுதி சோதனைகளுக்கான மேம்பட்ட சதி செயல்பாடு, பல பிழை திருத்தங்கள் மற்றும் பைத்தான் 3.5 க்கான ஆதரவைக் கொண்டுள்ளது.
புதிய அம்சங்கள்¶
: Func: qiskit.ignis.verification.randomized_benchmarking.randomized_benchmarking_seq செயல்பாடு கேட் பொருள்களின் விருப்ப உள்ளீட்டை` interleaved_elem` என அனுமதிக்கிறது. கூடுதலாக, சி.என்.ஓ.டி. குவாண்டம் சர்க்யூட்).
The
qiskit.ignis.verification.randomized_benchmarking.CNOTDihedralnow contains the following new features. Initialization from various types of objects: CNOTDihedral, ScalarOp, QuantumCircuit, Instruction and Pauli. Converting to a matrix using to_matrix and to an operator using to_operator. Tensor product methods tensor and exவகுப்பு: `qiskit.ignis.verification.randomized_benchmarking.CNOTDihedral இப்போது பின்வரும் புதிய அம்சங்களைக் கொண்டுள்ளது. பல்வேறு வகையான பொருட்களிலிருந்து துவக்கம்: சி.என்.ஓ.டி.டிஹெட்ரல்,` ஸ்கேலார்ஆப்`, குவாண்டம் சர்க்யூட்,` அறிவுறுத்தல்` மற்றும் பவுலி. To_matrix ஐப் பயன்படுத்தி ஒரு மேட்ரிக்ஸாகவும்,` to_operator` ஐப் பயன்படுத்தும் ஆபரேட்டராகவும் மாற்றுகிறது. டென்சர் தயாரிப்பு முறைகள் டென்சர் மற்றும்` விரிவாக்கு`. இணைத்தல்,` சரிசெய்தல்` மற்றும்` இடமாற்றம்` முறைகளைப் பயன்படுத்தி சரிசெய்தல், இணைத்தல் மற்றும் இடமாற்றம் ஆகியவற்றைக் கணக்கிடுதல். Is_cnotdihedral முறையைப் பயன்படுத்தி ஒரு உறுப்பு CNOTDihedral என்பதை சரிபார்க்கவும். சிதைவு_நொட்டிஹெட்ரல்_ஜெனரல் செயல்பாட்டின் அடிப்படையில், ஒரு சி.என்.ஓ.டி.டிஹெட்ரல் தனிமத்தின் சிதைவு முறை` டூ_சர்க்யூட்` எந்தவொரு குவிட்டுகளையும் அனுமதிக்க நீட்டிக்கப்பட்டது. pand`. Calculation of the adjoint, conjugate and transpose using conjugate, adjoint and transpose methods. Verify that an element is CNOTDihedral using is_cnotdihedral method. Decomposition method to_circuit of a CNOTDihedral element into a circuit was extended to allow any number of qubits, based on the function decompose_cnotdihedral_general.தணிப்பு தொகுதிக்கு எதிர்பார்ப்பு மதிப்பு அளவீட்டு பிழை குறைப்பை சேர்க்கிறது. இது * முழுமையான * என்-க்விட் அசைன்மென்ட் மேட்ரிக்ஸ், ஒற்றை-க்விட் * டென்சர் * அசைன்மென்ட் மேட்ரிக்ஸ் அல்லது * தொடர்ச்சியான நேர மார்கோவ் செயல்முறை (சி.டி.எம்.பி) * [1] கணக்கீட்டு ஆபரேட்டர்களின் எதிர்பார்ப்பு மதிப்புகளை கணக்கீட்டு அகராதிகளிலிருந்து கணக்கிடும்போது அளவீட்டு பிழை குறைப்பு. : Func: qiskit.ignis.mitigation.expectation_value செயல்பாட்டைப் பயன்படுத்தி எதிர்பார்ப்பு மதிப்புகள் கணக்கிடப்படுகின்றன.
அளவீட்டு பிழை தணிப்பாளரை அளவிடுவதற்கான அளவுத்திருத்த சுற்றுகள்: func: qiskit.ignis.mitigation.expval_meas_mitigator_circuits செயல்பாட்டைப் பயன்படுத்தி உருவாக்கப்படுகின்றன, இதன் விளைவாக: class:` qiskit.ignis.mitigation.ExpvalMeasMitigatorFitter` வகுப்பைப் பயன்படுத்தி பொருத்தப்படுகிறது. தணிப்பான் ஒரு தணிக்கும் பொருளை ஒரு வாதமாக வழங்கலாம்: func: ~ qiskit.ignis.mitigation.expectation_value செயல்பாட்டைத் தணிக்க.
- [1] S Bravyi, S Sheldon, A Kandala, DC McKay, JM Gambetta,
Mitigating measurement errors in multi-qubit experiments, arXiv:2006.14044 [quant-ph].
எடுத்துக்காட்டுகள்:
பின்வரும் உதாரணமாக 5-விகிதமான எதிர்பார்ப்பு மதிப்பு அளவிலான மதிப்பு அளவிலான ` ` 'tensored ' ` முறையை பயன்படுத்துகிறது.
from qiskit import execute from qiskit.test.mock import FakeVigo import qiskit.ignis.mitigation as mit backend = FakeVigo() num_qubits = backend.configuration().num_qubits # Generate calibration circuits circuits, metadata = mit.expval_meas_mitigator_circuits( num_qubits, method='tensored') result = execute(circuits, backend, shots=8192).result() # Fit mitigator mitigator = mit.ExpvalMeasMitigatorFitter(result, metadata).fit() # Plot fitted N-qubit assignment matrix mitigator.plot_assignment_matrix()
<matplotlib.axes._subplots.AxesSubplot at 0x7f57d60d1f70>
பின்வரும் நிகழ்படங்கள் எப்படி மேற்பட்ட mitigator யை பயன்படுத்த எவ்வாறு கணக்கிடும் தவறான மதிப்பு கணக்கீடுகளுக்குத் தேவைப்படுகிறது
from qiskit import QuantumCircuit # Test Circuit with expectation value -1. qc = QuantumCircuit(num_qubits) qc.x(range(num_qubits)) qc.measure_all() # Execute shots = 8192 seed_simulator = 1999 result = execute(qc, backend, shots=8192, seed_simulator=1999).result() counts = result.get_counts(0) # Expectation value of Z^N without mitigation expval_nomit, error_nomit = mit.expectation_value(counts) print('Expval (no mitigation): {:.2f} \u00B1 {:.2f}'.format( expval_nomit, error_nomit)) # Expectation value of Z^N with mitigation expval_mit, error_mit = mit.expectation_value(counts, meas_mitigator=mitigator) print('Expval (with mitigation): {:.2f} \u00B1 {:.2f}'.format( expval_mit, error_mit))
Expval (no mitigation): -0.66 ± 0.01 Expval (with mitigation): -1.01 ± 0.01
நம்பாவை விருப்ப சார்புநிலையாக சேர்க்கிறது. வகுப்பு: qiskit.ignis.mitigation.CTMPExpvalMeasMitigator வகுப்பின் செயல்திறனை கணிசமாக அதிகரிக்க நம்பா CTMP முறையுடன் எதிர்பார்ப்பு மதிப்பு அளவீட்டு பிழை தணிப்புக்கு பயன்படுத்தப்படுகிறது.
இரண்டு முறைகளைச் சேர் :class:` qiskit.ignis.verification.quantum_volume.QVFitter `.
மெத்: சராசரி மற்றும் நிலையான விலகல் சிக்மாவைப் பயன்படுத்தி நிலையான இயல்பான விநியோகத்தில் z மதிப்பைக் கணக்கிட qiskit.ignis.verification.quantum_volume.QVFitter.calc_z_value. சிக்மா = 0 எனில், அது ஒரு எச்சரிக்கையை எழுப்புகிறது மற்றும் சிக்மாவுக்கு ஒரு சிறிய மதிப்பை (1e-10) ஒதுக்குகிறது, இதனால் குறியீடு இன்னும் இயங்கும்.
: மெத்: z மதிப்பைப் பயன்படுத்தி நம்பிக்கை அளவைக் கணக்கிட qiskit.ignis.verification.quantum_volume.QVFitter.calc_confidence_level.
Hmean <2/3 in :meth: qiskit.ignis.verification.quantum_volume.QVFitter.qv_success போது கூட நம்பிக்கை நிலை சேமிக்கவும்.
பைனோமியல் விநியோகத்தின் அடிப்படையில் புள்ளிவிவரங்களை எவ்வாறு கணக்கிடுவது என்பதற்கான விளக்கங்களைச் சேர்க்கவும்: மெத்: qiskit.ignis.verification.quantum_volume.QVFitter.calc_statistics.
வகுப்பு: qiskit.ignis.verification.QVFitter முறை: மெத்:` ~ qiskit.ignis.verification.QVFitter.plot_qv_data` ஒரு `` matplotlib.Figure`` பொருளைத் தர புதுப்பிக்கப்பட்டுள்ளது. முன்பு, அது எதையும் திருப்பித் தராது. ஒரு உருவத்தைத் திருப்புவதன் மூலம், காட்சிப்படுத்தல்களை ஒரு பெரிய `` மேட்லோட்லிப்`` பணிப்பாய்வுகளில் ஒருங்கிணைப்பதை இது எளிதாக்குகிறது.
: class: qiskit.ignis.verification.QVFitter முறை: மெத்:` qiskit.ignis.verification.QVFitter.plot_qv_data` ஆல் உருவாக்கப்பட்ட உருவத்தில் உள்ள பிழைகள் இரண்டு சிக்மா நம்பிக்கை இடைவெளிகளைக் குறிக்கும் வகையில் புதுப்பிக்கப்பட்டுள்ளன. முன்னதாக, பிழைகள் ஒரு-சிக்மா நம்பிக்கை இடைவெளிகளைக் குறிக்கும். குவாண்டம் தொகுதி தர நிர்ணயத்தின் வெற்றிகரமான அளவுகோல்களுக்கு கனமான வெளியீட்டு நிகழ்தகவு> 2/3 ஒரு பக்க இரு சிக்மா நம்பிக்கையுடன் (~ 97.7%) தேவைப்படுகிறது. இரண்டு சிக்மா நம்பிக்கை இடைவெளிகளைக் குறிக்க பிழைப் பட்டிகளை மாற்றுவது படத்தில் வெற்றியை எளிதில் அடையாளம் காண அனுமதிக்கிறது.
ஒரு புதிய குவார்க், `` figsize``: class: qiskit.ignis.verification.QVFitter method: meth:` qiskit.ignis.verification.QVFitter.plot_qv_data` இல் சேர்க்கப்பட்டுள்ளது. இந்த குவார்க் `` (x, y) `` வடிவத்தின் ஒரு பகுதியை எடுத்துக்கொள்கிறது, அங்கு `` x`` மற்றும் `` y`` ஆகியவை உருவாக்கப்பட்ட சதித்திட்டத்தை உருவாக்க அங்குலங்களில் பரிமாணமாகும்.
குவாண்டம் தொகுதி 64 காகிதத்தின் படம் 2a ஐப் போன்ற சோதனைகளின் எண்ணிக்கையை எதிர்த்து கனரக வெளியீட்டு நிகழ்தகவு (HOP) மற்றும் சோதனைகளின் எண்ணிக்கையைத் திட்டமிட: மெத்: qiskit.ignis.verification.quantum_volume.QVFitter.plot_hop_accumulative முறை சேர்க்கப்பட்டுள்ளது. //arxiv.org/abs/2008.08571>`_). தனிப்பட்ட சோதனைகளின் HOP சிதறல்கள் மற்றும் ஒட்டுமொத்த HOP சிவப்பு வரிசையில் திட்டமிடப்பட்டுள்ளதால் திட்டமிடப்பட்டுள்ளது. இரண்டு-சிக்மா நம்பிக்கை இடைவெளிகள் நிழலாடிய பகுதியாகவும் 2/3 வெற்றி வாசல் கோடு கோட்டாகவும் திட்டமிடப்பட்டுள்ளது
தனிப்பட்ட சோதனைகளைத் திட்டமிட, மெத்: qiskit.ignis.verification.quantum_volume.QVFitter.plot_qv_trial முறை சேர்க்கப்பட்டுள்ளது, கிஸ்கிட் டெர்ராவிலிருந்து: மெத்:` qiskit.visualization.plot_histogram` முறையை மேம்படுத்துகிறது. சிறந்த (வெற்று) மற்றும் சோதனை (நிரப்பப்பட்ட) மதிப்புகளுக்கான பிட்ஸ்ட்ரிங் எண்ணிக்கைகள் ஒன்றுடன் ஒன்று ஹிஸ்டோகிராம்களாக திட்டமிடப்பட்டுள்ளன. புராணத்தில் சோதனை கனமான வெளியீட்டு நிகழ்தகவு காட்டப்பட்டுள்ளது. சராசரி நிகழ்தகவு சிவப்பு கோடு கோட்டாக திட்டமிடப்பட்டுள்ளது.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
Python 3.5 உடன் Qiskit டெர்ராவை இயக்குவதற்கான ஆதரவு நீக்கப்பட்டது. இந்த வெளியீட்டில் இருந்து Qiskit டெர்ராவைப் பயன்படுத்த நீங்கள் இப்போது குறைந்தபட்சம் Python 3.6 ஐப் பயன்படுத்த வேண்டும். நீங்கள் Python 3.5 ஐப் பயன்படுத்துகிறீர்கள் என்றால், வேலை செய்யும் கடைசி பதிப்பு Qiskit டெர்ரா 0.15.2 ஆகும்.
பிழை திருத்தங்கள்¶
வகுப்பில் ஒரு பிழையை சரிசெய்தல்: வர்க்கம்: 5 க்கும் மேற்பட்ட விலகல்களைக் கொண்ட உறுப்புகளுக்கு qiskit.ignis.verification.randomized_benchmarking.CNOTDihedral.
இதற்கான நம்பிக்கை நிலை வாசலை சரிசெய்யவும்: மெத்: qiskit.ignis.verification.quantum_volume.QVFitter.qv_success ஐ 0.977 க்கு z = 2 உடன் ஒத்த QV காகித அல்காரிதம் 1 ஆல் வரையறுக்கப்பட்டுள்ளது.
ஒரு பிழையைச் சரிசெய்யவும்: func: qiskit.ignis.verification.randomized_benchmarking.randomized_benchmarking_seq, கொடுக்கப்பட்ட rb_pattern இல் ஒரே அளவிலான அனைத்து துணை அமைப்புகளும் ஒரு 'rand_seed' அளவுரு செயல்பாட்டிற்கு வழங்கப்பட்டபோது ஒரே வாயில்களைக் கொண்டிருக்கின்றன.
Aqua 0. 8.0¶
முன்னுரை¶
இந்த விடுதலை போசிக் பிரச்சினைகளுக்கான கிடைக்கப்பெற்ற முறைகளை இயக்குவதற்கு ஒரு இடைமுகத்தை அறிமுகம் செய்கிறது. குறிப்பாக நாம் ஒரு முழு இடைமுகத்தை இயங்குவதற்கு ஒரு முழு இடைமுகத்தை அறிமுகப்படுத்தினோம்.
ஆரம்பிக்கப்பட்ட மாநிலங்களுக்கான ஒரு இடைமுகம் வேதியியல் கூறுகளுக்கு சேர்க்கப்பட்டுள்ளது. பொதுவான ஆயுதமான மாநிலங்களின் கணிப்பை உருவாக்குவதற்கு பயனருக்கு இப்போது எளிமையானதாகும். இந்த கணக்கெடுப்பு ` ` Driver ` ` இது மூலக்கூறுகளைப் பற்றிய ஒத்திசைவு தகவல்களை வழங்குகிறது, ` ` மாற்றம் ` ` பிரச்சினை பற்றிய தகவல்களை ஒரு விரைவான ஹாமிலோனியன் மற்றும் இறுதியாக ஒரு சோழர் பற்றிய தகவல்களை வழங்குகிறது. The Solver is the specific way which the उत्साहित states ගණනය is done (the algorithm). இந்த அமைப்பு தரமான மாநில கணக்கெடுப்பின் ஒன்றை பின்பற்றுகிறது. ஒரு ஒற்றை பதிலாக எதிர்பார்ப்பு மதிப்புகளின் பட்டியல்களை எடுப்பதற்கு முடிவுகள் மாற்றப்படுகின்றன. ` ` QEOM ` ` மற்றும் ` NumpyEigensolver ` ` புதிய கட்டமைப்புக்கு ஏற்றுக்கொள்ளப்படுகின்றன. ஒரு தொழிற்சாலையை ஒரு குறிப்பிட்ட வடிகட்டி (குறிப்பிட்ட சிம்மடிகளின் இலக்கு மாநிலங்கள்) கொண்டு ஒரு விண்மையான eigensolver இயக்குவதற்கு அறிமுகப்படுத்தப்படுகிறது.
Aer qasm_ simulator யுடன் VQE எதிர்பார்ப்பு கணக்கீடு இப்போது எதிர்பார்க்கப்பட்ட சுழல் நடத்தை கணக்கிடும்.
புதிய அம்சங்கள்¶
சூடான_ஸ்டார்ட் என்ற விருப்பத்தை அறிமுகப்படுத்தியது, பிற விருப்பங்களை சரிசெய்யும்போது பயன்படுத்தப்படாது. இந்த விருப்பம் இயக்கப்பட்டால், ஒரு தளர்வான சிக்கல் (அனைத்து மாறிகள் தொடர்ச்சியாக இருக்கும்) முதலில் தீர்க்கப்படும் மற்றும் தீர்வு தீர்வு முறையில் செயல்பாட்டு செயல்முறையைத் தொடங்குவதற்கு முன்பு தேர்வாளரின் நிலையைத் தொடங்க பயன்படுத்தப்படுகிறது.
வீச்சு மதிப்பீட்டு வழிமுறைகள் இப்போது A- மற்றும் Q ஆபரேட்டர்களைக் குறிப்பிட உள்ளீடுகளாக `` குவாண்டம் சிர்குட்`` பொருள்களைப் பயன்படுத்துகின்றன. இந்த மாற்றம் சுற்று நூலகத்தில் `` க்ரோவர் ஆபரேட்டர்`` அறிமுகப்படுத்தப்படுவதோடு செல்கிறது, இது வெவ்வேறு கியூ ஆபரேட்டர்களின் உள்ளுணர்வு மற்றும் விரைவான கட்டுமானத்தை அனுமதிக்கிறது. எடுத்துக்காட்டாக, ஒரு பெர்ன lli லி-பரிசோதனையை இப்போது கட்டமைக்க முடியும்
import numpy as np from qiskit import QuantumCircuit from qiskit.aqua.algorithms import AmplitudeEstimation probability = 0.5 angle = 2 * np.sqrt(np.arcsin(probability)) a_operator = QuantumCircuit(1) a_operator.ry(angle, 0) # construct directly q_operator = QuantumCircuit(1) q_operator.ry(2 * angle, 0) # construct via Grover operator from qiskit.circuit.library import GroverOperator oracle = QuantumCircuit(1) oracle.z(0) # good state = the qubit is in state |1> q_operator = GroverOperator(oracle, state_preparation=a_operator) # use default construction in QAE q_operator = None ae = AmplitudeEstimation(a_operator, q_operator)
நிபந்தனை (CVR) எதிர்பார்ப்பு மதிப்புகளின் கூட்டு மதிப்பை ஒழுங்கும்படி சேர்க்கவும்.
ஒரு உகப்பாக்கம் சிக்கலின் புறநிலை செயல்பாட்டுக்கு ஒத்த ஒரு மூலைவிட்ட அவதானிக்கக்கூடிய எச் கொடுக்கப்பட்டால், நாம் கவனித்த அளவீடுகளின் சராசரி ஆற்றலைக் குறைப்பதில் நாங்கள் பெரும்பாலும் ஆர்வம் காட்டவில்லை. இந்த சூழலில், எங்கள் அளவீடுகளில் சில குறைந்த ஆற்றலை அடைந்தால் நாங்கள் திருப்தி அடைகிறோம். (வேதியியல் சிக்கல்களுக்கு இது உறுதியாக இல்லை என்பதை நினைவில் கொள்க).
இந்த நோக்கத்திற்காக, மாறுபட்ட உகப்பாக்கத்தின் போது சிறந்த கவனிக்கப்பட்ட மாதிரியை செலவுச் செயல்பாடாகப் பயன்படுத்தலாம். இங்கே சிக்கல் என்னவென்றால், இது மென்மையான அல்லாத தேர்வுமுறை மேற்பரப்பில் ஏற்படக்கூடும். இந்த சிக்கலைத் தீர்க்க, சிறந்த கவனிக்கப்பட்ட மாதிரியை மட்டும் பயன்படுத்துவதன் மூலம் தேர்வுமுறை மேற்பரப்பை மென்மையாக்க முடியும், மாறாக சிறந்த கவனிக்கப்பட்ட மாதிரிகளில் சில பகுதிகளுக்கு மேல் சராசரியாக இருக்க முடியும். சி. வி. ஏ. ஆர் மதிப்பீட்டாளர் இதைச் சரியாகச் செய்கிறார் [1].
விடுங்கள்: கணிதம்: ஆல்பா இதில் ஒரு உண்மையான எண்ணாக இருக்க வேண்டும்: கணிதம்:` [0,1] இது புறநிலை செயல்பாட்டைக் கணக்கிடப் பயன்படும் சிறந்த கவனிக்கப்பட்ட மாதிரிகளின் பகுதியைக் குறிக்கிறது. கணிதம்: `ஆல்பா = 1, சி.வி.ஆர் ஒரு நிலையான எதிர்பார்ப்பு மதிப்புக்கு சமம் என்பதைக் கவனியுங்கள். இதேபோல், கணிதம்: ஆல்பா = 0 என்றால், சி.வி.ஆர் சிறந்த கவனிக்கப்பட்ட மாதிரியைப் பயன்படுத்துவதற்கு ஒத்திருக்கிறது. இதன் இடைநிலை மதிப்புகள்: கணிதம்: ஆல்பா இந்த இரண்டு புறநிலை செயல்பாடுகளுக்கு இடையில் ஒன்றிணைகிறது.
The functionality to use CVaR is included into the operator flow through a new subclass of OperatorStateFn called CVaRMeasurement. This new StateFn object is instantied in the same way as an OperatorMeasurement with the exception that it also accepts an alpha parameter and that it automatically enforces the is_measurement attribute to be True. Observe that it is unclear what a CVaRStateFn would represent were it not a measurement.
எடுத்துக்காட்டுகள்:
qc = QuantumCircuit(1) qc.h(0) op = CVaRMeasurement(Z, alpha=0.5) @ CircuitStateFn(primitive=qc, coeff=1.0) result = op.eval()
அதே போல, ஒரு இயல்பான எதிர்பார்ப்பு மதிப்புக்கு ஒத்திருக்கும் ஒரு இயக்குநர் CVaRExpectation மாற்றத்தை பயன்படுத்தி ஒரு CVR எதிர்பார்ப்பை மாற்றலாம்.
எடுத்துக்காட்டுகள்:
qc = QuantumCircuit(1) qc.h(0) op = ~StateFn(Z) @ CircuitStateFn(primitive=qc, coeff=1.0) cvar_expecation = CVaRExpectation(alpha=0.1).convert(op) result = cvar_expecation.eval()
இந்த நுட்பத்தைப் பற்றிய கூடுதல் விவரங்களுக்காக [1] பார்க்கவும்.
குறிப்பு:
- [1]: Barkoutsos, P. K., Nannicini, G., Robert, A., Tavernelli, I., and Woerner, S.,
"CVaR ஐப் பயன்படுத்தி மாறுபட்ட குவாண்டம் உகப்பாக்கலை மேம்படுத்துதல்" `arXiv: 1907.04769
புதிய இடைமுகம் ` ` Eigensolver ` ` for Eigensolver algorithms.
ஆரம்பிக்கப்பட்ட மாநிலங்களுக்கான ஒரு இடைமுகம் வேதியியல் கூறுகளுக்கு சேர்க்கப்பட்டுள்ளது. பொதுவான ஆயுதமான மாநிலங்களின் கணிப்பை உருவாக்குவதற்கு பயனருக்கு இப்போது எளிமையானதாகும். இந்த கணக்கெடுப்பு ` ` Driver ` ` இது மூலக்கூறுகளைப் பற்றிய ஒத்திசைவு தகவல்களை வழங்குகிறது, ` ` மாற்றம் ` ` பிரச்சினை பற்றிய தகவல்களை ஒரு விரைவான ஹாமிலோனியன் மற்றும் இறுதியாக ஒரு சோழர் பற்றிய தகவல்களை வழங்குகிறது. The Solver is the specific way which the उत्साहित states ගණනය is done (the algorithm). இந்த அமைப்பு தரமான மாநில கணக்கெடுப்பின் ஒன்றை பின்பற்றுகிறது. ஒரு ஒற்றை பதிலாக எதிர்பார்ப்பு மதிப்புகளின் பட்டியல்களை எடுப்பதற்கு முடிவுகள் மாற்றப்படுகின்றன. ` ` QEOM ` ` மற்றும் ` NumpyEigensolver ` ` புதிய கட்டமைப்புக்கு ஏற்றுக்கொள்ளப்படுகின்றன. ஒரு தொழிற்சாலையை ஒரு குறிப்பிட்ட வடிகட்டி (குறிப்பிட்ட சிம்மடிகளின் இலக்கு மாநிலங்கள்) கொண்டு ஒரு விண்மையான eigensolver இயக்குவதற்கு அறிமுகப்படுத்தப்படுகிறது.
ஃபெர்மோனிக் பிரச்சினைகளைத் தீர்மானிக்கும் பணிபுரிவதற்கு கூடுதலாக, போஸோனிக் கோட்பாடு மற்றும் ஆரம்பிக்கும் மாநிலங்கள் கணக்கிடுவதற்கு இடைமுகங்கள் சேர்க்கப்பட்டுள்ளன. குறிப்பாக நாம் ஒரு முழு இடைமுகத்தை இயங்குவதற்கு ஒரு முழு இடைமுகத்தை அறிமுகப்படுத்தினோம்.
The ` ` OrbitalOptimizationVQE ` ` has been added as new ground state solver in the chemistry module. This solver அனுமதிக்கிறது மாற்று அளபுருக்கள் மற்றும் மூலக்கூறுகளின் ஒழுங்குபடுத்தல். The algorithm is හඳුන්වා in Sokolov et al., The Journal of Chemical Physics 152 (12).
ஒரு புதிய வழிமுறை சேர்க்கப்பட்டுள்ளது: மூலக்கூறின் சுதந்திரத்தின் வெவ்வேறு அளவுகளில் சாத்தியமான ஆற்றல் மேற்பரப்பைக் கணக்கிடுவதற்கான பிறப்பு ஓப்பன்ஹைமர் ஆற்றல் ஆற்றல் மேற்பரப்பு. வழிமுறை `` BOPESSampler`` என அழைக்கப்படுகிறது. இது முன் வரையறுக்கப்பட்ட ஆற்றல்களின் பகுப்பாய்வு செயல்பாட்டிற்கு சாத்தியமான ஆற்றல் மேற்பரப்பை பொருத்துவதற்கான செயல்பாடுகளை மேலும் வழங்குகிறது. சில விவரங்கள்.
The
OrbitalOptimizationVQEhas been added as new ground state solver in the chemistry module. This solver allows for the simulatneous optimization of the variational parameters and the orbitals of the molecule. The algorithm is introduced in Sokolov et al., The Journal of Chemical Physics 152 (12).OrbitalOptimizationVQE`` வேதியியல் தொகுதியில் புதிய தரை நிலை தீர்வாக சேர்க்கப்பட்டுள்ளது. இந்த தீர்வி மாறுபட்ட அளவுருக்கள் மற்றும் மூலக்கூறின் சுற்றுப்பாதைகளின் உருவகப்படுத்துதலை மேம்படுத்த அனுமதிக்கிறது. இந்த வழிமுறை சோகோலோவ் மற்றும் பலர், வேதியியல் இயற்பியல் இதழ் 152 (12) இல் அறிமுகப்படுத்தப்பட்டுள்ளது.`.
சாய்வு கட்டமைப்பு. : class: qiskit.operators.gradients ஒரு குவாண்டம் நிலை ரெஸ்பைக் குறிக்கும் ஒரு ஆபரேட்டருக்கு வழங்கப்பட்டது. ஒரு எதிர்பார்ப்பு மதிப்பு, சாய்வு கட்டமைப்பானது சாய்வு, இயற்கை சாய்வு, ஹெஸ்ஸியன் மற்றும் குவாண்டம் ஃபிஷர் தகவல்களை மதிப்பீடு செய்ய உதவுகிறது
ஒரு அளவுருவாக்கப்பட்ட குவாண்டம் நிலை | ψ ()〉 = வி (ψ) | ψ input உள்ளீட்டு நிலை | ψ〉 மற்றும் அளவுருவாக்கப்பட்ட அன்சாட்ஸ் வி (θ), மற்றும் ஒரு ஆபரேட்டர் ஓ (ω).
சாய்வு: நாம் கணக்கிட விரும்புகிறோம்: கணிதம்: d⟨ψ (θ) | O (ω) | ψ (θ)〉 / dω resp. : கணிதம்: d⟨ψ (θ) | O (ω) | ψ ()〉 / dθ resp. : கணிதம்: d⟨ψ (θ) | i〉 | i | ψ ()〉 / dθ
கடைசி வழக்கு சாய்வு w.r.t. | ψ () இன் மாதிரி நிகழ்தகவுகள். இந்த சாய்வுகளை வெவ்வேறு முறைகள் மூலம் கணக்கிடலாம், அதாவது ஒரு அளவுரு மாற்றம், யூனிடரிகளின் நேரியல் கலவை மற்றும் வரையறுக்கப்பட்ட வேறுபாடு முறை.
எடுத்துக்காட்டுகள்:
x = Parameter('x') ham = x * X a = Parameter('a') q = QuantumRegister(1) qc = QuantumCircuit(q) qc.h(q) qc.p(params[0], q[0]) op = ~StateFn(ham) @ CircuitStateFn(primitive=qc, coeff=1.) value_dict = {x: 0.1, a: np.pi / 4} ham_grad = Gradient(grad_method='param_shift').convert(operator=op, params=[x]) ham_grad.assign_parameters(value_dict).eval() state_grad = Gradient(grad_method='lin_comb').convert(operator=op, params=[a]) state_grad.assign_parameters(value_dict).eval() prob_grad = Gradient(grad_method='fin_diff').convert(operator=CircuitStateFn(primitive=qc, coeff=1.), params=[a]) prob_grad.assign_parameters(value_dict).eval()
ஹெஸ்ஸியன்ஸ்: நாங்கள் கணக்கிட விரும்புகிறோம்: கணிதம்: d ^ 2⟨ψ () | O (ω) | ψ (θ)〉 / dω ^ 2 resp. : கணிதம்: d ^ 2⟨ψ () | O (ω) | ψ ()〉 / dθ ^ 2 resp. : கணிதம்: d ^ 2⟨ψ () | O (ω) | ψ (θ)〉 / dθdω resp. : கணிதம்: d ^ 2⟨ψ () | i〉 | i | ψ ()〉 / dθ ^ 2.
கடைசி வழக்கு ஹெஸியன் w.r.t. | ψ () இன் மாதிரி நிகழ்தகவுகள். முதல் வரிசை சாய்வுகளைப் போலவே, ஹெஸ்ஸியன்களையும் வெவ்வேறு முறைகள் மூலம் மதிப்பீடு செய்யலாம், அதாவது ஒரு அளவுரு மாற்றம், அலகுகளின் நேரியல் கலவை மற்றும் வரையறுக்கப்பட்ட வேறுபாடு முறை. `` ஹெஸியன் () அளவுருக்கள் கொடுக்கப்பட்டால். மாற்றவும் (op, param_tuple) `` இரண்டாவது வரிசை வழித்தோன்றலுக்கான மதிப்பை வழங்குகிறது. அளவுருக்களின் பட்டியல் வழங்கப்பட்டால் `` ஹெஸியன் (). மாற்றவும் (op, param_list) `` கொடுக்கப்பட்ட அனைத்து பாராமீட்டர்க்கும் முழு ஹெஸ்ஸியனை வழங்குகிறது.
QFI: குவாண்டம் ஃபிஷர் தகவல் QFI என்பது ஒரு மெட்ரிக் டென்சர் ஆகும், இது ஒரு அளவுரு குவாண்டம் மாநிலத்தின் பிரதிநிதித்துவ திறனுக்கான பிரதிநிதியாகும்` | ψ (θ) V = V (θ) | ψ ψ உள்ளீட்டு நிலையால் உருவாக்கப்படுகிறது | மற்றும் அளவுருவாக்கப்பட்ட அன்சாட்ஸ் வி (θ) . தூய்மையான மாநிலத்திற்கான `QFI இன் உள்ளீடுகள் படிக்க: கணிதம்:` [QFI] kl = Re [〈∂kψ | ∂lψ〉 - ∂kψ |〉 〈ψ | ∂lψ〉] * 4`.
முந்தைய வழித்தோன்றல் வகைகளைப் போலவே, QFI ஐ வெவ்வேறு முறைகளைப் பயன்படுத்தி கணக்கிடலாம்: யூனிடரிகளின் செயல்பாட்டின் நேரியல் கலவையை அடிப்படையாகக் கொண்ட முழு பிரதிநிதித்துவம், ஒரு தொகுதி-மூலைவிட்ட மற்றும் ஒன்றுடன் ஒன்று முறையின் அடிப்படையில் ஒரு மூலைவிட்ட பிரதிநிதித்துவம்.
எடுத்துக்காட்டுகள்:
q = QuantumRegister(1) qc = QuantumCircuit(q) qc.h(q) qc.p(params[0], q[0]) op = ~StateFn(ham) @ CircuitStateFn(primitive=qc, coeff=1.) value_dict = {x: 0.1, a: np.pi / 4} qfi = QFI('lin_comb_full').convert(operator=CircuitStateFn(primitive=qc, coeff=1.), params=[a]) qfi.assign_parameters(value_dict).eval()
QFI மற்றும் சாய்வு ஆகியவற்றின் கலவையானது ஒரு சாய்வு சிறப்பு வடிவத்திற்கு வழிவகுக்கிறது, அதாவது
நேச்சுரல் கிராடியண்ட்ஸ்: இயற்கை சாய்வு என்பது ஒரு சிறப்பு சாய்வு முறையாகும், இது ஒரு சாய்வு மீட்டெடுக்கிறது w.r.t. தொடர்புடைய குவாண்டம் ஃபிஷர் தகவலின் (QFI) தலைகீழ் கொண்ட ஒரு மாநில அளவுரு: கணிதம்: QFI ^ -1 d⟨ψ (θ) | O (ω) | ψ (θ)〉 / dθ. இதன்மூலம், QFI இன் சரியான தலைகீழ் மாற்றத்திற்குப் பதிலாக குறைந்தபட்ச சதுர தீர்வோடு சேர்ந்து பயன்படுத்தப்படும் ஒரு சாய்வு மற்றும் QFI முறை மற்றும் ஒழுங்குமுறை முறை ஆகியவற்றை நாம் தேர்வு செய்யலாம்:
எடுத்துக்காட்டுகள்:
op = ~StateFn(ham) @ CircuitStateFn(primitive=qc, coeff=1.) nat_grad = NaturalGradient(grad_method='lin_comb, qfi_method='lin_comb_full', \ regularization='ridge').convert(operator=op, params=params)
சாய்வு கட்டமைப்பானது qiskit.aqua.components.optimizers இலிருந்து உகப்பாக்கிகளுடன் இணக்கமானது. வழித்தோன்றல் வகுப்புகள் கிரேடியண்ட்_வ்ரப்பர் () செயல்பாட்டுடன் வருகின்றன, இது தொடர்புடைய அழைப்பை வழங்குகிறது.
ஒரு சிக்கல் நிகழ்வின் ஃபெர்மியோனிக் மற்றும் போசோனிக் மாற்றத்திற்கான `` உருமாற்றங்களை`` அறிமுகப்படுத்துகிறது. ஃபெர்மியோனிக் ஆபரேட்டரை க்விட் ஆபரேட்டராக மாற்றுகிறது. உருமாற்றத்திற்கான மரியாதைக்குரிய வர்க்கம் `` ஃபெர்மியோனிக்_மாற்றம்`` என்பது நில நில பண்புகளைக் கணக்கிடுவதற்கான வழிமுறைகளில் `` கிரவுண்ட்_ஸ்டேட்_சால்வர்ஸ்`` அறிமுகப்படுத்துகிறது. கணக்கீடு ஒரு `` குறைந்தபட்ச ஈஜென்சால்வர்`` ஐப் பயன்படுத்தி அல்லது `` அடாப்ட்விக்யூ`` ஐப் பயன்படுத்தி `` வேதியியல் / முடிவுகளை`` அறிமுகப்படுத்துகிறது, அங்கு ஈஜென்ஸ்டேட்_ முடிவு மற்றும் மின்னணு_ கட்டமைப்பு
புதிய அல்காரிதம் முடிவு வகுப்புகள்:
: வகுப்பு: ~ கிஸ்கிட் .அக்வா. வழிமுறைகள் .கிரோவர் முறை: மெத்: ~ கிஸ்கிட் .அக்வா. வழிமுறைகள் .குரோவர் ._ ரன் திரும்பும் வகுப்பு: வகுப்பு: ~ கிஸ்கிட் .அக்வா .அல்காரிதம்ஸ். க்ரோவர் ரிசல்ட். : வகுப்பு: ~ கிஸ்கிட் .அக்வா. வழிமுறைகள் .அம்ப்ளிட்யூட் மதிப்பீடு முறை: மெத்: ~ கிஸ்கிட் .அக்வா. வழிமுறைகள். அலைவீச்சு மதிப்பீடு ._ரூன் வகுப்பு: வகுப்பு: ~ கிஸ்கிட் .அக்வா. வழிமுறைகள் .அம்ப்ளிட்யூட் மதிப்பீட்டு முடிவு. : வகுப்பு: ~ கிஸ்கிட். அக்வா. வழிமுறைகள். மறுபயன்பாட்டு வீச்சு மதிப்பீடு முறை: மெத்: ` கிஸ்கிட். அக்வா. வழிமுறைகள் .செயல்பாட்டு வீச்சு மதிப்பீடு ._ ரன்` வகுப்பு: வகுப்பு: கிஸ்கிட். அக்வா. வழிமுறைகள். மறுபயன்பாட்டு வீச்சு மதிப்பீட்டு முடிவு. : வகுப்பு: `~ கிஸ்கிட். அக்வா. வழிமுறைகள். அதிகபட்ச விருப்பம்.
அனைத்து புதிய முடிவுகளின் வகுப்புகள் முந்தைய விளைவு அகராதியுடன் பொருந்தும்.
புதிய லீனியர் சொல்வர் முடிவு வகுப்புகள்:
HHLmethod_run()returns classHHLResult.NumPyLSsolvermethod_run()returns classNumPyLSsolverResult.அனைத்து புதிய முடிவுகளின் வகுப்புகள் முந்தைய விளைவு அகராதியுடன் பொருந்தும்.
`` மினிமம்இஜென் ஆப்டிமைசேஷன் ரிசல்ட்`` இப்போது பண்புகளை அம்பலப்படுத்துகிறது: `` மாதிரிகள்`` மற்றும் `` ஈஜென்சால்வர்_ முடிவு``. பிந்தையது ஆப்டிமைசர் பயன்படுத்தும் அடிப்படை வழிமுறையிலிருந்து பெறப்படுகிறது மற்றும் வழிமுறைக்கு குறிப்பிட்டது. `` சுழல்நிலை மினிமம்இஜென் ஆப்டிமைசர்`` இப்போது முடிவு வகுப்பின் ஒரு உதாரணத்தை அளிக்கிறது `` சுழல்நிலைமினிமம்இஜென் ஆப்டிமைசேஷன் ரிசல்ட்`` இதன் விளைவாக அடிப்படை வழிமுறைகளிலிருந்து பெறப்பட்ட இடைநிலை முடிவுகள் இருக்கலாம். அர்ப்பணிப்பு முடிவு வகுப்பு பண்புகளை `` மாற்றீடுகள்`` மற்றும் `` வரலாறு`` ஆகியவற்றை வெளிப்படுத்துகிறது.
`` க்ரோவர் ஆப்டிமைசர்`` இப்போது `` க்ரோவர் ஆப்டிமைசேஷன் ரிசல்ட்`` இன் ஒரு நிகழ்வைத் தருகிறது, மேலும் இந்த முடிவு வகுப்பு `` ஆபரேஷன்_கவுண்ட்ஸ்``, `` என்_இன்புட்_க்பிட்ஸ்``, மற்றும் `` என்_அவுட்_க்விட்ஸ்`` ஆகியவற்றை நேரடியாக வெளிப்படுத்துகிறது. இந்த பண்புகள் இனி `` raw_results`` அகராதியில் கிடைக்காது.
`` SlsqpOptimizer`` இப்போது `` SlsqpOptimizationResult`` இன் ஒரு உதாரணத்தைத் தருகிறது, மேலும் இந்த முடிவு வகுப்பு SLSQP செயல்படுத்தலுக்கான குறிப்பிட்ட கூடுதல் பண்புகளை அம்பலப்படுத்துகிறது.
`` குவாண்டம் சர்க்யூட்`` பொருள்களை ஜெனரேட்டர் சுற்றுகளாக `` குவாண்டம் ஜெனரேட்டருக்கு`` அனுப்பும் ஆதரவு.
CircuitStateFn.from_vector இல் உண்மையான உள்ளீட்டு திசையன்களுக்கான கட்டுப்பாட்டை நீக்குகிறது. முறை நீட்டிப்புகளை அழைக்கிறது. பிந்தையது சிக்கலான உள்ளீட்டு திசையன்களை வெளிப்படையாக ஆதரிக்கிறது (API மற்றும் ஆவணங்கள்). எனவே இந்த கட்டுப்பாடு தேவையற்றதாகத் தெரிகிறது.
Retworkx இன் வரைபட வண்ணமயமாக்கல் வழிமுறையைப் பயன்படுத்தி எளிமைப்படுத்தப்பட்ட AbelianGrouper. இது numpy அடிப்படையிலான வண்ணமயமாக்கல் வழிமுறையை விட வேகமானது.
எந்தவொரு வாதமும் இல்லாத மாநில செயல்பாட்டு பொருள்களில் `` எவல்`` ஐ அழைக்க அனுமதிக்கவும், இது மாநில செயல்பாட்டின் `` வெக்டர்ஸ்டேட்எஃப்`` பிரதிநிதித்துவத்தை வழங்குகிறது. இது `` ஆபரேட்டர் பேஸ்.இவல்`` உடன் நிலையான நடத்தை, இது எந்தவொரு வாதமும் நிறைவேற்றப்படாவிட்டால், `` மேட்ரிக்ஸ்ஆப்`` பிரதிநிதித்துவத்தை வழங்குகிறது.
வழிமுறையால் நிகழ்த்தப்படும் அதிகபட்ச எண்ணிக்கையிலான மறு செய்கைகளை கட்டுப்படுத்த அனுமதிக்க `` VQEAdapt`` வகுப்பில் `` அதிகபட்ச_அறிவுகளை`` சேர்க்கிறது.
Aer qasm_simulator உடன் VQE எதிர்பார்ப்பு கணக்கீடு இப்போது எதிர்பார்க்கப்படும் ஷாட் இரைச்சல் நடத்தை கொண்ட ஒரு கணக்கீட்டிற்கு இயல்புநிலையாகிறது. சிறப்பு ஏர் ஸ்னாப்ஷாட் அடிப்படையிலான கணக்கீடு, இது மிகவும் வேகமானது, மாநில திசையன் சிமுலேட்டரைப் போன்ற சிறந்த வெளியீட்டைக் கொண்டு இன்னும் தேர்வு செய்யப்படலாம், ஆனால் அக்வா 0.7 க்கு முன்பு போலவே இது இப்போது இயல்புநிலையாக இருக்காது, ஆனால் தேர்வு செய்யப்படலாம்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
முந்தைய அனலிட்டிக் குவாண்டம் கிரேடியண்ட் டிசென்ட் (AQGD) கிளாசிக்கல் ஆப்டிமைசரின் நீட்டிப்பு AQGD உடன் சகாப்தங்களுடன். இப்போது AQGD ஒரு வேகமான சொல், பகுப்பாய்வு சாய்வு மற்றும் அளவுருவாக்கப்பட்ட குவாண்டம் வாயில்களுக்கான கூடுதல் தனிப்பயனாக்கப்பட்ட படி நீள அட்டவணையுடன் சாய்வு வம்சாவளியை மேம்படுத்துகிறது. புறநிலை செயல்பாட்டை மதிப்பிடும்போது குவாண்டம் சுற்று பயன்படுத்தி சாய்வு "பகுப்பாய்வு ரீதியாக" கணக்கிடப்படுகிறது.
பைதான் 3.5 உடன் கிஸ்கிட்-அக்வாவை இயக்குவதற்கான நீக்கப்பட்ட ஆதரவு நீக்கப்பட்டது. Qiskit-aqua> = 0.8.0 ஐப் பயன்படுத்த உங்களுக்கு இப்போது குறைந்தபட்சம் பைதான் 3.6 தேவைப்படும். நீங்கள் பைதான் 3.5 ஐப் பயன்படுத்துகிறீர்கள் என்றால், வேலை செய்யும் கடைசி பதிப்பு கிஸ்கிட்-அக்வா 0.7.x.
Retworkx ஐ புதிய சார்புநிலையாகச் சேர்த்தது.
தேய்மான குறிப்புகள்¶
வீச்சு மதிப்பீட்டு வழிமுறைகளின் `` i_objective`` வாதம் `` புறநிலை_க்பிட்கள்`` என மறுபெயரிடப்பட்டது.
உருமாற்ற வகை
குபிட் மேப்பிங் டைப்
`` சர்க்யூட்ஃபாக்டரி`` மற்றும் பெறப்பட்ட வகைகளை நீக்கு. அக்வாவில் உள்ள பயன்பாடுகளுக்குத் தேவையான சில அம்சங்களை `` குவாண்டம் சர்க்யூட்`` தவறவிட்டபோது, `` சர்க்யூட்ஃபாக்டரி`` தற்காலிக வகுப்பாக அறிமுகப்படுத்தப்பட்டுள்ளது. இப்போது சுற்றுக்கு தேவையான அனைத்து செயல்பாடுகளும் இருப்பதால், சுற்று தொழிற்சாலையை அகற்றலாம். மாற்றீடுகள் பின்வரும் அட்டவணையில் காட்டப்பட்டுள்ளன.
Circuit factory class | Replacement ------------------------------------+----------------------------------------------- CircuitFactory | use QuantumCircuit | UncertaintyModel | - UnivariateDistribution | - MultivariateDistribution | - NormalDistribution | qiskit.circuit.library.NormalDistribution MultivariateNormalDistribution | qiskit.circuit.library.NormalDistribution LogNormalDistribution | qiskit.circuit.library.LogNormalDistribution MultivariateLogNormalDistribution | qiskit.circuit.library.LogNormalDistribution UniformDistribution | qiskit.circuit.library.UniformDistribution MultivariateUniformDistribution | qiskit.circuit.library.UniformDistribution UnivariateVariationalDistribution | use parameterized QuantumCircuit MultivariateVariationalDistribution | use parameterized QuantumCircuit | UncertaintyProblem | - UnivariateProblem | - MultivariateProblem | - UnivariatePiecewiseLinearObjective | qiskit.circuit.library.LinearAmplitudeFunctionஐசிங் மாற்றும் வகுப்புகள்: வர்க்கம்: qiskit.optimization.converters.QuadraticProgramToIsing மற்றும்: class:` qiskit.optimization.converters.IsingToQuadraticProgram` நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக: வர்க்கம்: qiskit.optimization.QuadraticProgram முறைகள்: மெத்:` ~ qiskit.optimization.QuadraticProgram.to_ising` மற்றும்: meth: ~ qiskit.optimization.QuadraticPrgraom.from_ising அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
ர்க்யூட் நூலகத்திற்கு `` வெயிட்அடர்`` என `` qiskit.circuit.library`` இல் போர்ட் செய்யப்பட்டுள்ள `` வெயிட்ஸம்ஆப்பரேட்டர்`` ஐ நீக்கவும்.
`` கோர் ஹாமில்டோனியன்`` வகுப்பு `` ஃபெர்மியோனிக் டிரான்ஸ்ஃபார்மேஷனுக்கு` ஆதரவாக நீக்கப்பட்டது, `` வேதியியல் ஆபரேட்டர்`` வகுப்பு `` டிரான்ஃபார்மேஷன்களுக்கு 'ஆதரவாக நீக்கப்பட்டது`` குறைந்தபட்ச_இஜென்_சால்வர்கள் / வி. கே_அடாப்ட்` ஆகியவையும் நீக்கப்பட்டு நகர்த்தப்படுகின்றன கிரவுண்ட்_ஸ்டேட்_சால்வர் இடைமுகத்தை செயல்படுத்துதல் `` பயன்பாடுகள் / மூலக்கூறு_ மைதானம்_ஸ்டேட்_எனர்ஜி`` `` கிரவுண்ட்_ஸ்டேட்_சால்வர்`` க்கு ஆதரவாக நீக்கப்பட்டது
`` ஆப்டிமைசர். எடுத்துக்காட்டாக, `` Optimizer.SupportLevel.required`` க்கு பதிலாக `` OptimizerSupportLevel.required`` ஐப் பயன்படுத்தவும்.
QunatumGeneratorஉள்ளீடாக `` UnivariateVariationalDistribution`` மற்றும் `` MultivariateVariationalDistribution`` ஆகியவற்றைக் குறைக்கவும். அதற்கு பதிலாக, வெற்று ``QuantumCircuit `` பொருட்களைப் பயன்படுத்தலாம்.எதிர்கால வெளியீட்டில் அகற்றப்பட வேண்டிய அபேலியன் குரூப்பர்.குரூப்_சுபாப்ஸ் இன்` வேகமான` மற்றும் பயன்பாட்டு_என்எக்ஸ் விருப்பங்கள் புறக்கணிக்கப்பட்டன.
ஜி. எஸ். எல். எஸ் உகப்பாக்கி வகுப்பு `` மேக்சிட்டருக்கு` ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்சம்_அறிவு`` நீக்கப்பட்டது. எஸ். பி. எஸ். ஏ ஆப்டிமைசர் வகுப்பு `` மேக்சிட்டருக்கு` ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்ச_விவரங்கள்`` நீக்கப்பட்டது. உகந்ததாக்கு_விஎம் செயல்பாடு `` அதிகபட்சம்`` க்கு ஆதரவாக `` அதிகபட்சம்_விளக்குகள்`` அளவுரு நீக்கப்பட்டது. ADMMParameters வகுப்பு `` அதிகபட்சம்`` க்கு ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்சம்_அறிவு`` நீக்கப்பட்டது.
பிழை திருத்தங்கள்¶
ஒற்றை மற்றும் இரட்டை உற்சாகங்களை உள்ளடக்கிய யு.சி.சி.எஸ்.டி கிளர்ச்சி பட்டியல், செயலில்_ (un) ஆக்கிரமிக்கப்பட்ட அளவுருக்கள் வழியாக யு.சி.எஸ்.எஸ்.டி.க்கு ஒரு செயலில் இடம் வெளிப்படையாக வழங்கப்பட்டபோது சரியாக உருவாக்கப்படவில்லை.
அலைவீச்சு மதிப்பீட்டு வழிமுறைகளுக்கு, ஆரக்கிள் வினவல்களின் எண்ணிக்கையை Q ஆபரேட்டர் / க்ரோவர் ஆபரேட்டர் எத்தனை முறை பயன்படுத்தப்படுகிறது என்பதை வரையறுக்கிறோம். காட்சிகளின் எண்ணிக்கையும் இதில் அடங்கும். அந்த காரணி MLAE மற்றும் IQAE இல் சேர்க்கப்பட்டுள்ளது, ஆனால் 'நிலையான' QAE இல் இல்லை.
CircuitSampler.convert ஐ சரிசெய்யவும், இதனால் `` is_measurement`` ஆனது மாற்றப்பட்ட ஸ்டேட்ஃபென்ஸுக்கு பிரச்சாரம் செய்யப்படுகிறது.
இதில் குணகங்களின் இரட்டை கணக்கீட்டை சரிசெய்யவும்: மெத்` qiskit.aqua.operators.VectorStateFn.to_circuit_op`.
அடையாளத்தின் அளவிடக்கூடிய பன்மடங்கு என்ற சொல் உட்பட ஒரு ஆபரேட்டரில் PauliTrotterEvolution.convert ஐ அழைப்பது தவறான சுற்றுவட்டத்தைக் கொடுத்தது, இது அளவிடல் குணகத்தை புறக்கணித்தது. இந்த பிழைத்திருத்தம் சுற்றுவட்டத்தின் Global_phase சொத்தில் உள்ள குணகத்தின் விளைவை உள்ளடக்கியது.
ListOp.num_qubits பட்டியலில் உள்ள அனைத்து ஆப்களுக்கும் ஒரே எண்_க்பிட்கள் உள்ளதா என சரிபார்க்கவும். முன்பு, லிஸ்ட்ஆப்பில் முதல் ஆபரேட்டரில் உள்ள குவிட்களின் எண்ணிக்கை திரும்பப் பெறப்பட்டது. இந்த மாற்றத்தின் மூலம், மற்ற எல்லா ஆபரேட்டர்களுக்கும் ஒரே எண்ணிக்கையிலான குவிட்கள் உள்ளன என்று கூடுதல் சோதனை செய்யப்படுகிறது.
PauliOp.exp_i () பின்வரும் மாற்றங்களுடன் சரியான மேட்ரிக்ஸை உருவாக்கவும். 1) 2 இன் காரணியின் கட்டத்தில் முன்பு பிழை ஏற்பட்டது. 2) சுற்று ஒரு மேட்ரிக்ஸாக மாற்றும்போது உலகளாவிய கட்டம் புறக்கணிக்கப்பட்டது. நாம் இப்போது qiskit.quantum_info.Operator ஐப் பயன்படுத்துகிறோம், இது ஒரு சுற்று ஒரு ஒற்றையாட்சி மேட்ரிக்ஸாக மாற்றுவதற்கு பொதுவாக பயனுள்ளதாக இருக்கும்.
Https://github.com/Qiskit/qiskit-aqua/issues/1184 இல் புகாரளிக்கப்பட்டதாக சுழற்சி கண்டறிதலை சரிசெய்கிறது.
ஐபிஎம் கியூ வழங்குபவர் 0.11.0¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
பைதான் 3.5 உடன் கிஸ்கிட்-இப்மக்-வழங்குநரை இயக்குவதற்கான நீக்கப்பட்ட ஆதரவு நீக்கப்பட்டது. Qiskit-ibmq-வழங்குநர்> = 0.11.0 ஐப் பயன்படுத்த உங்களுக்கு இப்போது குறைந்தபட்சம் பைதான் 3.6 தேவைப்படும். நீங்கள் பைதான் 3.5 ஐப் பயன்படுத்துகிறீர்கள் என்றால், வேலை செய்யும் கடைசி பதிப்பு qiskit-ibmq- வழங்குநர் 0.10.x.
இந்த வெளியீட்டிற்கு முன்பு, பைதான் 3.6 க்கு `` வெப்சாக்கெட்`` 7.0 பயன்படுத்தப்பட்டது. இந்த வெளியீட்டில், அனைத்து பைதான் பதிப்புகளுக்கும் `` வெப்சாக்கெட்`` 8.0 அல்லது அதற்கு மேல் தேவை. இதை பிரதிபலிக்கும் வகையில் தொகுப்பு தேவைகள் புதுப்பிக்கப்பட்டுள்ளன.
Qiskit 0.22.0¶
டெரா 0.15.2¶
எந்த மாற்றங்களும் இல்லை
Aer 0.6.1¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.4.0¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.7.5¶
எந்த மாற்றங்களும் இல்லை
ஐபிஎம் கியூ வழங்குபவர் 0.10.0¶
புதிய அம்சங்கள்¶
சிக்யூசி சீரற்ற பிரித்தெடுத்தல்களை இப்போது ஒத்திசைவற்ற முறையில் பயன்படுத்தலாம், முறைகளைப் பயன்படுத்தி: மெத்: கிஸ்கிட் .பிரவைடர்கள். ஐ பி ம் கியூ . சீரற்ற. சி கியூ சி எஸ்ட்ரக்டர்.ரன் _அஸின்க் _ஈஸ்ட் 1 மற்றும்: மெத் : ~ கிஸ்கிட் . பிரோவிடேர்ஸ் .ஐபிம்கியூ . ரெண்டோம் . சிகியூசி எஸ்ட்ரக்டர் . ரன் _அஸின்க் _ ஈஸ்ட் 2. இந்த முறைகள் ஒவ்வொன்றும் ஒரு: வகுப்பைத் தருகின்றன: ~ கிஸ்கிட் . ப்ரொவிடேர்ஸ் . ஐபிம் கியூ .ரெண்டோம் .சி கியூ சி எஸ்ட்ரக்டர்ஸ் ஜாப் ` உதாரணம், இது வேலை நிலையை சரிபார்க்க உங்களை அனுமதிக்கிறது (பயன்படுத்தி: மெத்: கிஸ்கிட் .பிரவைடர்கள். ஐபிம் கியூ .ரெண்டோம் .சி கியூ சி எஸ்ட்ரக்டர்ஸ் ஜாப்.ஸ்டேட்டஸ் ` ) மற்றும் அதன் முடிவுக்காக காத்திருங்கள் (பயன்படுத்தி: மெத்: `~ கிஸ்கிட் .பிரவைடர்கள். ஐபிம் கியூ . சீரற்றது. தி: மெத்: `ஸ்கிட் .பிரவைடர்கள். ஐபிம் கியூ .ரெண்டோம் .சி கியூ சி எஸ்ட்ரக்டர்ஸ் ஜாப்.ஸ்டேட்டஸ் .ரன் ` முறை ஒத்திசைவாக உள்ளது.
நீங்கள் இப்பொழுது புதிய ஐபிம் கியூ பரிசோதனை சேவையை கேள்வி, மீட்கவும், மற்றும் பதிவிறக்கப்பட்ட தரவை பதிவிறக்க முடியும். இந்த சேவையகத்துக்கு புதிய இன்டெர்பாஸ் :மொட் :` க்கிஸ்கிட் .ப்ரொவிடெர் ' பிணைப்பு.ஐபிம் கியூ.யூஸ் ` பேக்கஜ் . இந்த அம்சம் இன்னும் பீட்டாவில் உள்ளது என்பதை கவனிக்கவும், அனைத்து கணக்குகளையும் புதிய தாக அணுக வேண்டுடாம் . இது பின்பு ஒத்திசைவு இல்லாமல் செயல்திறன் மற்றும் எ பி ஐ இரண்டிலும் பெரும் மாற்றத்துக்கு உட்பட்டது.
இரண்டு ஜூபியர் மாய செயல்பாடுகள், ஐ கியூ எக்ஸ் டேஸ்போர்டு மற்றும் பின்னணி விட்ஜெட், பின்னணி ரெசெர்விஷன் காட்ட புதுப்பிக்கப்படுகிறது. ஒரு பின்னணி அடுத்த 24 மணி நேரத்தில் நிர்ணயிக்கப்பட்டால், அடுத்த ஒரு மணி நேரம் மற்றும் அதன் கால அளவு தெரியும் (எ. கா ` ` சராசரியாக: 6 மணிக்கு 30 நிமிடங்கள் (60மீ) ` ). முன்பதிவு இருந்தால் மற்றும் பின்தளத்தில் செயலில் இருந்தால், பின்னணி நிலையானது ` ஆக்ட்டிவ் [ஆர்] ``.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
இந்த விடுதலிலிருந்து துவங்குகிறது, ` basis_ வாயில்கள் `: மெத்: `கிஸ்கிட். ப்ரீர்ஸ் . ஐபிம் கியூ .பின்தளத்தில் .அமைத்தல் ` ஒவ்வொரு பின்னணிக்கு வேறுபடும். நீங்கள் உங்கள் நிரலை புதுப்பிக்கப்பட வேண்டும் என்றால், அடிப்படை வாயுக்கள் ` ` ['ஐ டி ',' யூ 1 ',' யூ 2 ',' சி எக்ஸ் ',' சி எக்ஸ் '] ` `. நாம் எப்போதும் :: மெத்: `கிஸ்கிட். ப்ரீர்ஸ் . ஐபிம் கியூ .பின்தளத்தில் .அமைத்தல் ` முறையை பயன்படுத்தி பின்பற்ற வடிவமைப்பு மதிப்புகளைக் கண்டுபிடுக்க வேண்டும்.
`` கிஸ்கிட்-ஐபிம் -ப்ரோவிடெர் - `` 0. 10. தேவை `` கிஸ்கிட்-டெர்ரா `` வெளியீடு 0.15 அல்லது அதற்கு மேல். புதிய சார்புநிலையை பிரதிபலிக்கும் வகையில் தொகுப்பு மெட்டாடேட்டா புதுப்பிக்கப்பட்டுள்ளது.
கிஸ்கிட் 0.21.0¶
டெரா 0.15.2¶
எந்த மாற்றங்களும் இல்லை
Aer 0.6.1¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.4.0¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.7.5¶
எந்த மாற்றங்களும் இல்லை
ஐபிஎம் கியூ வழங்குபவர் 0.10.0¶
புதிய அம்சங்கள்¶
புதிய தொகுப்பைப் பயன்படுத்தி சி கியூ சி சீரற்ற பிரித்தெடுத்தல் போன்ற ஐபிம் கியூ சீரற்ற எண் சேவைகளை இப்போது நீங்கள் அணுகலாம்: மொட் : `க்கிஸ்கிட்.ப்ரொவைடர் .ஐ பி ம் கியூ .ரெண்டோம் `. இந்த அம்சம் இன்னும் பீட்டாவில் உள்ளது என்பதை நினைவில் கொள்க, எல்லா கணக்குகளுக்கும் அனுமதி இல்லை. இது பின்தங்கிய இணக்கத்தன்மை இல்லாமல் செயல்பட மற்றும் ஏபிஐ இரண்டிலும் கடுமையான மாற்றங்களுக்கு உட்பட்டது.
பிழை திருத்தங்கள்¶
ஐபிஎம் குவாண்டம் எக்ஸ்பீரியன்ஸ் உருவாக்கப்பட்டவர் வழியாக சமர்ப்பிக்கப்பட்ட வேலையை மீட்டெடுக்க ```` மதிப்பு பிழை `` என்ற: மெத்: ~ க்கிஸ்கிட் .ப்ரொவைடர் .ஐபிம் கியூ .ஐபிம் கியூ பாக்கெண்ட் .ரெட்ரிவ் _ ஜாப் ` என்பது ` மதிப்பு பிழை`` ஐ எழுப்பக்கூடிய சிக்கலை சரிசெய்கிறது.
: class: ~ qiskit.providers.ibmq.managed.IBMQJobManager புதுப்பிக்கப்பட்டுள்ளது, இதனால் பழைய வேலை முடிவடையும் வரை காத்திருக்கும்போது நேரம் முடிந்தால், புதிய வேலை சமர்ப்பிக்கப்படுவதைத் தடுக்காது. திருத்தங்கள் `# 737
Qiskit 0.20.1¶
டெரா 0.15.2¶
பிழை திருத்தங்கள்¶
அளவுருவாக்கப்பட்ட `` கேட்`` உதாரணத்தின் `` வரையறை`` பண்புக்கூற்றை அணுகும்போது, உருவாக்கப்பட்ட `` குவாண்டம் சர்க்யூட்`` தவறான `` அளவுரு டேபிள்`` உடன் உருவாக்கப்பட்டது, அதாவது `` குவாண்டம் சிர்குட்.பாராமீட்டர்கள்`` `` QuantumCircuit.bind_parameters`` ஐ அழைப்பது வரம்பற்ற அளவுருக்களை தவறாக புகாரளிக்கும். இது தீர்க்கப்பட்டுள்ளது.
`` எஸ்.எக்ஸ் கேட் (). இது புதுப்பிக்கப்பட்டது `` எஸ்.எக்ஸ் கேட் (). தலைகீழ் () `` ஒரு `` எஸ்.எக்ஸ்.டி.ஜி கேட் () `` மற்றும் அதற்கு நேர்மாறாக.
`` Instruction.inverse ()
, துணைப்பிரிவால் மேலெழுதப்படாதபோது, சில சந்தர்ப்பங்களில் தவறான `` to_matrixமுறையுடன் `` கேட்`` உதாரணத்தைத் தரும். தவறான `` to_matrix`` முறைகளின் நிகழ்வுகள் நீக்கப்பட்டன.பூஜ்ஜியமற்ற `` கோணத்துடன்` `` சி 3 எக்ஸ் கேட்`` க்கு, `` சி 3 எக்ஸ் கேட்.இன்வர்ஸ் () `` வழியாக கேட்டை தலைகீழாக மாற்றுவது முன்பு தவறான தலைகீழ் வாயிலை உருவாக்கியது. இது சரி செய்யப்பட்டது.
.விளக்கு () `` என்று அழைக்கும் போது அதே பயன்முறையின் ஒரு வாயிலைத் திருப்புவதற்கு `` MCXGateமுறைகள் புதுப்பிக்கப்பட்டுள்ளன. சில சந்தர்ப்பங்களில், `` MCXVChain`` வாயிலின் தலைகீழ் கொண்ட ஒரு சுற்றுக்குச் செல்வது பிழையை எழுப்பும் ஒரு சிக்கலை இது தீர்க்கிறது.முன்னதாக, `` PhaseGate.control`` வழியாக பெருக்க கட்டுப்பாட்டு கட்ட வாயிலை உருவாக்கும் போது, `` MCU1Gate`` வாயில் திரும்பியது. இது சரி செய்யப்பட்டது, இதனால் `` MCPhaseGate`` திரும்பப் பெறப்படும்.
முன்னதாக, `` MCPhaseGate`` கொண்ட ஒரு சுற்றுவட்டத்தை சிதைக்க முயற்சிப்பது `` MCPhaseGate`` இன் வரையறையில் முரண்பாடு காரணமாக ஒரு பிழையை எழுப்புகிறது. இது சரி செய்யப்பட்டது.
`` QuantumCircuit.compose`` மற்றும் `` DAGCircuit.compose`` ஆகியவை சில சந்தர்ப்பங்களில், உள்ளீட்டு சுற்றுகளில் ஒன்றுக்கு மேற்பட்ட `` கிளாசிக்கல் ரெஜிஸ்டர்`` ஐக் கொண்டிருந்தால், நிபந்தனை வாயில்களை தவறாக மொழிபெயர்த்துள்ளன. இது தீர்க்கப்பட்டுள்ளது.
ஒரு வெற்று தரவு அகராதியிலிருந்து ஒரு :class: qiskit.result.Counts பொருளை உருவாக்கும்போது ஒரு சிக்கல் சரி செய்யப்பட்டது. இப்போது இது வெற்று :class: ~ qiskit.result.Counts பொருள் உருவாக்கும். பொருள் காலியாக இருக்கும்போது மேலும் விளக்கமான விதிவிலக்கை எழுப்புவதற்கு :meth: ~ qiskit.result.Counts.most_frequent முறையும் புதுப்பிக்கப்பட்டுள்ளது. திருத்தம் # 5017 <https://github.com/Qiskit/qiskit-terra/issues/5017> __
மாறுபட்ட பதிவேடுகளுடன் சுற்றுகளை விரிவாக்குவது, `` கிரெக்ஸ்`` மற்றும் `` கிரெக்ஸ்`` பண்புகளை அதற்கேற்ப புதுப்பித்தது, ஆனால் `` க்விட்ஸ்`` மற்றும் `` கிளிபிட்ஸ்`` பட்டியல்கள் அல்ல. இவை இனி பதிவேடுகளிலிருந்து உருவாக்கப்படாது, ஆனால் அவை தற்காலிக சேமிப்பு பட்டியல்களாக இருப்பதால், இது பதிவேடுகள் மற்றும் பிட்களின் முரண்பாட்டிற்கு வழிவகுக்கிறது. இது சரி செய்யப்பட்டது மற்றும் `` நீட்டிப்பு` 'முறை தற்காலிக சேமிப்பு பிட் பட்டியல்களை வெளிப்படையாக புதுப்பிக்கிறது.
மெத்தின் உறுதியான செயலாக்கங்களின் பிழைகளை சரிசெய்யவும்: `` qiskit.circuit.ControlledGate.inverse` முறை, `` ctrl_state`` அளவுருவைப் பாதுகாக்காது.
ஒரு பிழை ஏற்பட்டது என்று நீண்ட சாளர திட்டத்தை ஏற்படுத்தும் போது ஒரு சுழல் பிழை ஏற்பட்டது.
Aer 0.6.1¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.4.0¶
எந்த மாற்றங்களும் இல்லை
அக்வா 0.7.5¶
எந்த மாற்றங்களும் இல்லை
IBM Q வழங்கி 0. 8. 0¶
எந்த மாற்றங்களும் இல்லை
Qiskit 0.20.0¶
Terra 0.15.1¶
முன்னுரை¶
0.16.0 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழை திருத்தங்கள் ஆகியவை அடங்கும். இந்த வெளியீட்டில் வரும் அம்சங்கள் பின்வருமாறு:
இந்த விடுதலை சார்ந்த அடிப்படையிலான மொழிபெயர்ப்பு அறிமுகம் (transpiler) உள்ளடக்கத்தை உள்ளடக்குகிறது. இது நேரடியாக ஒரு பரவலான கருவி அடிப்படையிலான சாதனை அடிப்படையிலான ஆதரவு, எ. கா, RZ, RZ, CZ, CZ அல்லது iSwap வாயில்களை செயல்படுத்துகிறது.
The :class:` ~ qiskit.circuit.QuantumCircuit ` class now tracks global phase. அதாவது உலகளாவிய காலம் தற்போது சரியாக கூடுதலாக ஒரு சுற்றுச்சூழல் நிலையை கட்டுப்படுத்துகிறது, மற்றும் வாய்க்கு மாட்ரிக்ஸ் வரையறைகள் ஒரு உலகளாவிய நிலைக்கு சமமாக கூடுதலாகும்.
புதிய அம்சங்கள்¶
ஒரு புதிய DAG வகுப்பு: வர்க்கம்: சுற்றுகளின் சார்பு வடிவத்தைக் குறிக்க qiskit.dagcircuit.DAGDependency, இந்த DAG இல், முனைகள் செயல்பாடுகள் (வாயில்கள், அளவீட்டு, தடை போன்றவை ...) மற்றும் விளிம்புகள் பரிமாற்றம் அல்லாதவற்றுடன் ஒத்திருக்கும் இரண்டு செயல்பாடுகளுக்கு இடையில்.
நான்கு புதிய செயல்பாடுகள் இதில் சேர்க்கப்பட்டுள்ளன: mod: qiskit.converters முன்னும் பின்னுமாக மாற்றுவதற்கு: வகுப்பு:` ~ qiskit.dagcircuit.DAGDependency`. இந்த செயல்பாடுகள்:
func: ~ qiskit.converters.circuit_to_dagdependency ஒரு: வகுப்பிலிருந்து மாற்ற:` ~ qiskit.circuit.QuantumCircuit` பொருள் ஒரு: வகுப்பிற்கு: ~ qiskit.dagcircuit.DAGDependency பொருள்.
: func: ~ qiskit.converters.dagdependency_to_circuit இலிருந்து ஒரு: வகுப்பிலிருந்து மாற்ற:` ~ qiskit.dagcircuit.DAGDependency` பொருள் ஒரு: வகுப்பிற்கு: q qiskit.circuit.QuantumCircuit பொருள.
: func: ~ qiskit.converters.dag_to_dagdependency ஒரு: வகுப்பிலிருந்து மாற்ற:` ~ qiskit.dagcircuit.DAGCircuit` பொருள் ஒரு: வகுப்பிற்கு: ~ qiskit.dagcircuit.DAGDependency பொருள்.
: func: ~ qiskit.converters.dagdependency_to_circuit இலிருந்து ஒரு: வகுப்பிலிருந்து மாற்ற:` ~ qiskit.dagcircuit.DAGDependency` பொருள் ஒரு: வகுப்பிற்கு: q qiskit.circuit.QuantumCircuit பொருள.
உதாரணத்திற்கு:
from qiskit.converters.dagdependency_to_circuit import dagdependency_to_circuit from qiskit import QuantumRegister, ClassicalRegister, QuantumCircuit circuit_in = QuantumCircuit(2) circuit_in.h(qr[0]) circuit_in.h(qr[1]) dag_dependency = circuit_to_dagdependency(circuit_in) circuit_out = dagdepency_to_circuit(dag_dependency)
இரண்டு புதிய டிரான்ஸ்பைலர் பாஸ்கள் இதில் சேர்க்கப்பட்டுள்ளன: mod: qiskit.transpiler.passes முதல் ,: வகுப்பு:` ~ qiskit.transpiler.passes.UnrollCustomDefinitions`, அவற்றின் படி அனைத்து வழிமுறைகளையும் அவிழ்த்து விடுகிறது: attr: q qiskit .circuit.Instruction.definition சொத்து, குறிப்பிட்ட `` அடிப்படை_கட்டுகள்`` அல்லது வழங்கப்பட்ட வாயில்களின் தொகுப்பை அடையும் போது நிறுத்தப்படும்: வகுப்பு: ~ qiskit.circuit.EquivlanceLibrary. இரண்டாவது ,: வகுப்பு: ~ qiskit.transpiler.passes.BasisTranslator, வழங்கப்பட்ட மொழிபெயர்ப்புகளின் தொகுப்பைப் பயன்படுத்துகிறது: வகுப்பு:` ~ qiskit.circuit.EquivalentLibrary` ஒரு குறிப்பிட்ட அடிப்படையில் சுற்று வழிமுறைகளை மீண்டும் எழுத.
கிடைக்கக்கூடிய சாதன வாயில்களுக்கு சுற்றுகளை மொழிபெயர்க்க பயன்படும் முறையைத் தேர்ந்தெடுப்பதை அனுமதிக்க ஒரு புதிய `` மொழிபெயர்ப்பு_மாதல்`` முக்கிய சொல் சேர்க்கப்பட்டுள்ளது: func: ~ qiskit.compiler.transpile. எடுத்துக்காட்டாக, `` டிரான்ஸ்பைல் (சுற்றறிக்கை, பின்தளத்தில், மொழிபெயர்ப்பு_மெதட் = 'மொழிபெயர்ப்பாளர்') ``. செல்லுபடியாகும் தேர்வுகள்:
`` 'unroller'``: வகுப்பைப் பயன்படுத்த: ~ qiskit.transpiler.passes.Unroller
`` 'மொழிபெயர்ப்பாளர்'``: வகுப்பைப் பயன்படுத்த: ~ qiskit.transpiler.passes.BasisTranslator.
`` 'தொகுப்பு'``: வகுப்பைப் பயன்படுத்த: ~ qiskit.transpiler.passes.UnitarySynthesis pass.
முன்னிருப்பு மதிப்பு ` மொழிபெயர்ப்பு ` ` `.
முடிவு முடிவு தரவைக் கையாள்வதற்கான புதிய வகுப்பு ,: வகுப்பு: qiskit.result.Counts, சேர்க்கப்பட்டுள்ளது. இந்த வகுப்பு `` டிக்ட்`` இன் துணைப்பிரிவாகும், மேலும் இது வேறு எந்த அகராதியையும் போல தொடர்பு கொள்ளலாம். ஆனால், இது சோதனைகளின் எண்ணிக்கையின் முடிவுகளைக் கையாள்வதற்கான உதவி முறைகள் மற்றும் பண்புகளை உள்ளடக்கியது மற்றும் பொருள் துவக்கத்தில் பைனரி சரங்களின் பிந்தைய செயலாக்கம் மற்றும் வடிவமைப்பையும் கையாளுகிறது. A: class: ~ qiskit.result.Counts பொருளை விசைகள் முழு எண்ணாகக் கொண்டு,` 0x4a' வடிவத்தின் அறுகோண சரங்களை,` 'வடிவத்தின் பைனரி சரங்களைக் கொண்டு எண்ணிக்கையின் அகராதியைக் கடந்து செல்வதன் மூலம் உருவாக்க முடியும். 0b1101'`, பதிவு மற்றும் நினைவக இடங்கள் (அதாவது `` '00 10'``) அல்லது ஒரு டிட் சரம் முழுவதும் வடிவமைக்கப்பட்ட ஒரு பிட் சரம். உதாரணத்திற்கு:
from qiskit.result import Counts counts = Counts({"0x0': 1, '0x1', 3, '0x2': 1020})
:class:` qiskit.dagcircuit.DAGCircuit ` பொருட்களை சேர்க்கும், :meth:` ~ qiskit.dagcircuit.DAGCircuit.from_networkx . This method takes in a networkx ` ` MultiDiGraph ` ` object (in the format of :meth: ~ qiskit.dagcircuit.dAGCircuit.to_networkx ) and will return a new :class: ~ qiskit.dagcircuit.DAGCircuit ` object. இந்த செயல்கூறு பின்னால் இந்த செயல்கூறு இயங்கும் ஆசிரியர்கள் வலைப்பதிவொன்றின் ` ग्राफ படிமம் நூலகம் <https://networkx.github.io/documentation/stable/reference/algorithms/index.html>` _ என்றால், ` retworkx API <https://retworkx.readthedocs.io/en/latest/api.html>` _. என்றாலும், அதாவது, இப்படி ஒரு பிரச்சனை ` retworkx issue tracker <https://github.com/Qiskit/retworkx/issues>` __ (or even the better a pull request बुझाएको).
`` Init_qubits`` க்கான புதிய குவார்க் இதில் சேர்க்கப்பட்டுள்ளது: func: ~ qiskit.compiler.assemble மற்றும்: func:` ~ qiskit.execute.execute`. இந்த அம்சத்தை ஆதரிக்கும் பின்தளத்தில், `` init_qubits`` சுற்றுகளை இயக்கும் பின்தளத்தில் ஒவ்வொரு ஷாட்டின் தொடக்கத்திலும் ஏதேனும் துவக்க வரிசைகளை செருகுமா என்பதைக் கட்டுப்படுத்த பயன்படுத்தலாம். முன்னிருப்பாக இது `` உண்மை`` என அமைக்கப்பட்டுள்ளது, அதாவது ஒவ்வொரு ஷாட்டின் தொடக்கத்திலும் அனைத்து குவிட்களும் தரை நிலையில் இருப்பதாக கருதலாம். இருப்பினும், `` init_qubits`` `` தவறு`` என அமைக்கப்பட்டால், ஒவ்வொரு பரிசோதனையின் தொடக்கத்திலும் காட்சிகளுக்கிடையில் துவக்கங்கள் தொடங்கப்படாது. குறிப்பு, சுற்றுகளை இயக்கும் பின்தளத்தில் இந்த கொடி எந்த விளைவையும் ஏற்படுத்த இந்த அம்சத்தை ஆதரிக்க வேண்டும்.
ஒரு புதிய குவார்க் `` rep_delay`` இல் சேர்க்கப்பட்டுள்ளது: func: qiskit.compiler.assemble ,: func:` qiskit.execute.execute`, மற்றும் கட்டமைப்பாளர்: class: ~ qiskit.qobj.PulseQobjtConfig. qiskit நிரல் செயலாக்கங்களுக்கு இடையிலான நேரத்தைக் குறிக்க இந்த புதிய குவார்க் பயன்படுத்தப்படுகிறது. இது ஒரு பின்தளத்தில் இருந்து `` rep_delays`` என அமைக்கப்பட்ட செல்லுபடியாகும் மதிப்புகளின் பட்டியலிலிருந்து தேர்ந்தெடுக்கப்பட வேண்டும்: வகுப்பு: ~ qiskit.providers.models.PulseBackendConfiguration பொருள்` backend.configuration (). Rep_delays என அணுகலாம். `).
`` Rep_delay`` kwarg பின்தளத்தில் மட்டுமே செயல்படும், இது மாறும் மறுபடியும் நேரத்தை அனுமதிக்கும். இது: வர்க்கத்திலும் குறிக்கப்படும்: ~ qiskit.providers.models.PulseBackendConfiguration ஒரு பின்தளத்தில்` டைனமிக்_ரெபிரேட்_எனபிள்` பண்புக்கூறு. `` டைனமிக்_ரெபரேட்_எனபிள்`` என்பது `` தவறு`` எனில், `` rep_time`` மதிப்பு: func: qiskit.compiler.assemble ,: func:` qiskit.execute.execute`, அல்லது கட்டமைப்பாளருக்கான: : `` q_kit.qobj.PulseQobjtConfig` என்பது `` rep_delay`` ஐ விடப் பயன்படுத்தப்படும். `` rep_time`` நிரல்களுக்கு இடையிலான தாமதத்தை விட, ஒரு நிரலின் காலத்தைக் குறிப்பிட பயனர்களை மட்டுமே அனுமதிக்கிறது.
`` qobj_schema.json`` இன் JSON ஸ்கீமா கோப்பு: mod: qiskit.schemas QASM Qobj களுக்கான விருப்ப உள்ளமைவு சொத்தாக` rep_delay` ஐ சேர்க்க புதுப்பிக்கப்பட்டுள்ளது.
`` பின்தளத்தில்_அமைவு_ஸ்கீமா.ஜ்சன்`` இந்த ஜ்சன் திட்ட கோப்பு: mod: qiskit.schemas ஒரு QASM பின்தளத்தில் உள்ளமைவுக்கான விருப்ப பண்புகளாக` டைனமிக்_ரெபரேட்_எனபிள்`,` ரெப்_டேலே_ரேஞ்ச்` மற்றும்` இயல்புநிலை_ரெப்_டேலே` ஆகியவற்றைச் சேர்க்க புதுப்பிக்கப்பட்டுள்ளது. பேலோட்.
ஒரு புதிய பண்புக்கூறு ,: attr: ~ qiskit.circuit.QuantumCircuit.global_phase, இது உலகளாவிய கட்டத்தைக் கண்காணிக்கப் பயன்படுகிறது: வர்க்கம்:` qiskit.circuit.QuantumCircuit` வகுப்பில் சேர்க்கப்பட்டுள்ளது. உதாரணத்திற்கு:
import math from qiskit import QuantumCircuit circ = QuantumCircuit(1, global_phase=math.pi) circ.u1(0)
மேலேயுள்ள எடுத்துக்காட்டில் உலகளாவிய கட்டம் `` சர்க்கி. குளோபல்_ஃபாஸ்`` உடன் மாற்றப்படலாம் அல்லது வினவப்படலாம். இரண்டிலும் இந்த அமைப்பு ரேடியன்களில் உள்ளது. சுற்று ஒரு அறிவுறுத்தலாக அல்லது வாயிலாக மாற்றப்பட்டால், உலகளாவிய கட்டம் முதல் குவிட்டில் இரண்டு ஒற்றை குவிட் சுழற்சிகளால் குறிக்கப்படுகிறது.
இது ஒரு: வர்க்கத்தை உட்கொள்ளும் பிற முறைகள் மற்றும் செயல்பாடுகளை அனுமதிக்கிறது: ~ qiskit.circuit.QuantumCircuit பொருள் உலகளாவிய கட்டத்தை கணக்கில் எடுத்துக்கொள்ள. உதாரணத்திற்கு. உடன்: attr: ~ qiskit.circuit.QuantumCircuit.global_phase பண்புக்கூறு: மெத்:` ~ qiskit.circuit.Gate.to_matrix` ஒரு வாயிலுக்கான முறை இப்போது ஒரு உலகளாவிய கட்டத்திற்கு பதிலாக அதன் சிதைவுகளுக்கு சரியாக ஒத்திருக்கும்.
இதே பண்புக்கூறு: வகுப்பு: ~ qiskit.dagcircuit.DAGCircuit வகுப்பிலும் சேர்க்கப்பட்டுள்ளது, இதனால் இடையில் மாற்றும் போது உலகளாவிய கட்டத்தைக் கண்காணிக்க முடியும்: வகுப்பு:` ~ qiskit.circuit.QuantumCircuit` மற்றும்: வகுப்பு: ~ qiskit. dagcircuit.DAGCircuit.
இரண்டு புதிய வகுப்புகள் ,: வகுப்பு: ~ qiskit.circuit.AncillaRegister மற்றும்: class:` ~ qiskit.circuit.AncillaQubit`: mod: qiskit.circuit தொகுதிக்கு சேர்க்கப்பட்டுள்ளன. இவை: வர்க்கம்: ~ qiskit.circuit.QuantumRegister மற்றும்: class:` ~ qiskit.circuit.Qubit` இன் துணைப்பிரிவுகள் மற்றும் முறையே குறிக்கும் வினாடிகளை துணைபுரியும். இந்த குவிட்களை பெரிய சுற்றுகள் மற்றும் வழிமுறைகளில் மீண்டும் பயன்படுத்த இது அனுமதிக்கும்.
ஒரு புதிய முறை ,: மெத்: ~ qiskit.circuit.QuantumCircuit.control, வகுப்பில் சேர்க்கப்பட்டுள்ளது:` ~ qiskit.circuit.QuantumCircuit`. இந்த முறை: வர்க்கத்தின் கட்டுப்படுத்தப்பட்ட பதிப்பை வழங்கும்: ~ qiskit.circuit.QuantumCircuit பொருள், திறந்த மற்றும் மூடிய கட்டுப்பாடுகளுடன். இந்த செயல்பாடு முன்பு: class: ~ qiskit.circuit.Gate class வழியாக மட்டுமே அணுக முடியும்.
ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.QuantumCircuit.repeat: வர்க்கத்தில் சேர்க்கப்பட்டுள்ளது:` ~ qiskit.circuit.QuantumCircuit` வகுப்பில். இது அசல் சுற்றுக்கான குறிப்பிட்ட எண்ணிக்கையிலான மறுபடியும் மறுபடியும் ஒரு புதிய சுற்று பொருளை வழங்குகிறது. உதாரணத்திற்கு:
from qiskit.circuit import QuantumCircuit qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) repeated_qc = qc.repeat(3) repeated_qc.decompose().draw(output='mpl')
ப்ளட்போர்ம் குறிப்பு மூலம் நகலெடுக்கப்படுகின்றன, அதாவது நீங்கள் சுற்றுக்கான ஒரு நிகழ்வில் ப்ளட்போர்ம் புதுப்பித்தால் அனைத்தும் மறுபடியும் மறுபடியும் புதுப்பிக்கப்படும்.
ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.QuantumCircuit.reverse_bits: வகுப்பில் சேர்க்கப்பட்டுள்ளது:` ~ qiskit.circuit.QuantumCircuit` வகுப்பில். இந்த முறை ஒரு சுற்றில் (குவாண்டம் மற்றும் கிளாசிக்கல் பிட்கள் இரண்டும்) பிட்களின் வரிசையை மாற்றியமைக்கும். லிட்டில்-எண்டியனில் இருந்து பிக்-எண்டியன் மற்றும் நேர்மாறாக ஒரு சுற்றுவட்டத்தை மாற்ற இதைப் பயன்படுத்தலாம்.
ஒரு புதிய முறை ,: மெத்: ~ qiskit.transpiler.Layout.combine_into_edge_map (), வகுப்பில் சேர்க்கப்பட்டுள்ளது: qiskit.transpiler.Layout வகுப்பில். இந்த முறை இரண்டாக மாற்றுவதை செயல்படுத்துகிறது: வர்க்கம்: ~ qiskit.transpiler.Layout பொருள்கள் இரண்டு சுற்றுகளை உருவாக்குவதற்கான ஒரு குவிட் வரைபடமாக மாற்றுகின்றன.
ஒரு புதிய வகுப்பு ,: வகுப்பு: ~ qiskit.test.mock.utils.ConfigurableFakeBackend,: mod:` qiskit.test.mock.utils` தொகுதிக்கு சேர்க்கப்பட்டுள்ளது. இந்த புதிய வகுப்பு சோதனையில் பயன்படுத்த கட்டமைக்கக்கூடிய போலி பின்தளத்தில் உருவாக்க உதவுகிறது. உதாரணத்திற்கு:
from qiskit.test.mock.utils import ConfigurableFakeBackend backend = ConfigurableFakeBackend("Tashkent", n_qubits=100, version="0.0.1", basis_gates=['u1'], qubit_t1=99., qubit_t2=146., qubit_frequency=5., qubit_readout_error=0.01, single_qubit_gates=['u1'])
100 குபிட்கள் மற்றும் கட்டமைப்பாளரில் குறிப்பிடப்பட்டுள்ள மற்ற அனைத்து அளவுருக்களுடன் ஒரு பின்தளத்தில் பொருளை உருவாக்கும்.
ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.EquivlanceLibrary.draw: class:` qiskit.circuit.EquivlanceLibrary` வகுப்பில் சேர்க்கப்பட்டுள்ளது. சமநிலை நூலகத்தின் உள்ளடக்கங்களை வரைவதற்கு இந்த முறை பயன்படுத்தப்படலாம், இது பிழைத்திருத்தத்திற்கு பயனுள்ளதாக இருக்கும். உதாரணத்திற்கு:
from numpy import pi from qiskit.circuit import EquivalenceLibrary from qiskit.circuit import QuantumCircuit from qiskit.circuit import QuantumRegister from qiskit.circuit import Parameter from qiskit.circuit.library import HGate from qiskit.circuit.library import U2Gate from qiskit.circuit.library import U3Gate my_equiv_library = EquivalenceLibrary() q = QuantumRegister(1, 'q') def_h = QuantumCircuit(q) def_h.append(U2Gate(0, pi), [q[0]], []) my_equiv_library.add_equivalence(HGate(), def_h) theta = Parameter('theta') phi = Parameter('phi') lam = Parameter('lam') def_u2 = QuantumCircuit(q) def_u2.append(U3Gate(pi / 2, phi, lam), [q[0]], []) my_equiv_library.add_equivalence(U2Gate(phi, lam), def_u2) my_equiv_library.draw()
ஒரு புதிய கட்ட அறிவுறுத்தல் ,: வகுப்பு: ~ qiskit.pulse.SetPhase, இதில் சேர்க்கப்பட்டுள்ளது: mod:` qiskit.pulse`. இந்த அறிவுறுத்தல் அடுத்தடுத்த சூழ்நிலையமைப்பு கட்டத்தை குறிப்பிட்ட கட்டத்திற்கு அமைக்கிறது (ரேடியன்களில். எடுத்துக்காட்டாக
import numpy as np from qiskit.pulse import DriveChannel from qiskit.pulse import Schedule from qiskit.pulse import SetPhase sched = Schedule() sched += SetPhase(np.pi, DriveChannel(0))
இந்த எடுத்துக்காட்டில், பருப்புகளின் கட்டம் `` டிரைவ் சேனல் (0) `` க்குப் பின்: வகுப்பு: ~ qiskit.pulse.SetPhase அறிவுறுத்தல் இதற்கு அமைக்கப்படும்: கணிதம்:` பை` ரேடியன்கள்.
ஒரு புதிய துடிப்பு வழிமுறை: வகுப்பு: ~ qiskit.pulse.ShiftFrequency இங்கு சேர்க்கப்பட்டுள்ளது: mod:` qiskit.pulse.instructions`. இந்த அறிவுறுத்தல் ஒரு சேனலின் அதிர்வெண்ணை அதன் தொகுப்பு அதிர்வெண்ணிலிருந்து மாற்ற உதவுகிறது. உதாரணத்திற்கு:
from qiskit.pulse import DriveChannel from qiskit.pulse import Schedule from qiskit.pulse import ShiftFrequency sched = Schedule() sched += ShiftFrequency(-340e6, DriveChannel(0))
இந்த எடுத்துக்காட்டில், `` டிரைவ் சேனல் (0) `` க்குப் பிறகு பயன்படுத்தப்படும் அனைத்து பருப்புகளும்: வகுப்பு: ~ qiskit.pulse.ShiftFrequency கட்டளைக்கு உறை 340 மெகா ஹெர்ட்ஸ் குறைக்கப்பட்ட உறை நிலையில் இருக்கும்.
ஒரு புதிய முறை: மெத்: ~ qiskit.circuit.ParameterExpression.conjugate: வகுப்பில் சேர்க்கப்பட்டுள்ளது:` ~ qiskit.circuit.ParameterExpression` வகுப்பில். இது பிழையை எழுப்பாமல் `` numpy.conj () `` ஐ அழைக்க உதவுகிறது. ஒரு: வகுப்பு: ~ qiskit.circuit.ParameterExpression பொருள் உண்மையானது என்பதால், அது தானே திரும்பும். இந்த நடத்தை பைதான் மிதவைகள் / இன்ட்டுகளுக்கு ஒத்ததாகும்.
ஒரு புதிய வகுப்பு: வகுப்பு: ~ qiskit.circuit.library.PhaseEstimation இங்கு சேர்க்கப்பட்டுள்ளது: mod:` qiskit.circuit.library`. இந்த சுற்று நூலக வகுப்பு என்பது arXiv: quant-ph / 9511026 <https://arxiv.org/pdf/quant-ph/9511026.pdf> __ இல் கட்ட மதிப்பீட்டு வழிமுறையின் அசல் வடிவமைப்பில் பயன்படுத்தப்படும் சுற்று ஆகும். கட்ட மதிப்பீடு என்பது கட்டத்தை மதிப்பிடுவதற்கான பணியாகும்: கணிதம்: ஒரு ஐஜென்வெல்யூவின் ஃபை: கணிதம்: ஒரு ஒற்றையாட்சி ஆபரேட்டரின்` இ {{2 பை ஐ ஃபை} : கணிதம்: யு`, அதனுடன் தொடர்புடையது eigenstate: math: | psi rangle. டி
\[U|\psi\rangle = e^{2\pi i\phi} |\psi\rangle\]இந்த மதிப்பீடு (அதன் மூலம் இந்த சர்குய்ட்) ஷோரின் வழிமுறை அல்லது குவாண்டம் அலைவீச்சு மதிப்பீடு போன்ற பல நன்கு அறியப்பட்ட வழிமுறைகளுக்கு ஒரு மைய வழக்கமாகும்.
தி: மோட்: qiskit.visualization செயல்பாடு: func:` ~ qiskit.visualization.plot_state_qsphere` இல் ஒரு புதிய குவார்க் உள்ளது `` show_state_labels``, இது qsphere காட்சிப்படுத்தலில் உள்ள ஒவ்வொரு குமிழியும் பெயரிடப்பட்டுள்ளதா என்பதைக் கட்டுப்படுத்தப் பயன்படுகிறது. முன்னிருப்பாக இந்த குவார்க் `` உண்மை`` என அமைக்கப்பட்டுள்ளது மற்றும் இயல்பாகவே ஒவ்வொரு குமிழிக்கும் அடுத்த அடிப்படை நிலைகளைக் காட்டுகிறது. `` ஷோ_ஸ்டேட்_லேபல்ஸ்`` குவார்க்கை `` தவறு`` என அமைப்பதன் மூலம் முந்தைய அம்சத்திற்கு மாற்றியமைத்து இந்த அம்சத்தை முடக்கலாம்.
தி: மோட்: qiskit.visualization function: func:` ~ qiskit.visualization.plot_state_qsphere` இல் ஒரு புதிய குவார்க் உள்ளது `` show_state_phases`` இது இயல்பாகவே `` தவறு`` என அமைக்கப்பட்டுள்ளது. `` உண்மை`` என அமைக்கப்பட்டால், அது ஒவ்வொரு அடிப்படை நிலையின் கட்டத்தையும் காட்டுகிறது.
தி: மோட்: qiskit.visualization செயல்பாடு: func:` ~ qiskit.visualization.plot_state_qsphere` இல் ஒரு புதிய குவார்க் உள்ளது `` use_degrees`` இது இயல்பாக `` தவறு`` என அமைக்கப்பட்டுள்ளது. `` உண்மை`` என அமைக்கப்பட்டால், அது ஒவ்வொரு அடிப்படை நிலையின் கட்டத்தையும் டிகிரிகளில் காண்பிக்கும், அதோடு கீழ் வலதுபுறத்தில் உள்ள வட்ட வட்டமும் இருக்கும்.
ஒரு புதிய வகுப்பு ,: வகுப்பு: ~ qiskit.circuit.library.QuadraticForm க்கு: mod:` qiskit.circuit.library` தொகுதிக்கு பைனரி மாறிகள் மீது இருபடி வடிவத்தை செயல்படுத்த. சுற்று நூலக உறுப்பு செயல்பாட்டை செயல்படுத்துகிறது
\[|x\rகோணம் | 0\rகோணம் \mapsto |x\rகோணம் | Q (x) \mod 2 ^ m\rகோணம்\]ஒரு புதிய வகுப்பு ,: வகுப்பு: ~ qiskit.circuit.library.QuadraticForm க்கு: இருபடி வடிவத்தை மாற்றியமைக்கவும்: கணிதம்:` Q` மற்றும்: கணிதம்: ம் ` வெளியீடு குவிட்ஸ். இதன் விளைவாக: கணிதத்தில் உள்ளது: `ம் ` வெளியீட்டு குபிட்கள் இருவரின் நிரப்புதலில் குறியாக்கம் செய்யப்பட்டுள்ளன. கணிதம்: `மீ குறிப்பிடப்படவில்லை எனில், ஒரு மட்டு ஓபராவைப் பயன்படுத்தாமல் முடிவை பிரதிநிதித்துவப்படுத்த தேவையான குறைந்தபட்ச எண்ணிக்கையிலான சுற்றுக்களை சுற்று தேர்வு செய்யும்: பைனரி மாறிகள் மீது இருபடி வடிவத்தை செயல்படுத்த` qiskit.circuit.library` தொகுதி. சுற்று நூலக உறுப்பு செயல்பாட்டை செயல்படுத்துகிறது.
உதாரணத்திற்கு:
import numpy as np from qiskit.circuit.library import QuadraticForm A = np.array([[1, 2], [-1, 0]]) b = np.array([3, -3]) c = -2 m = 4 quad_form_circuit = QuadraticForm(m, A, b, c)
சேர்: மெத்: qiskit.quantum_info.Statevector.expectation_value மற்றும்: மெத்:` qiskit.quantum_info.DensityMatrix.expectation_value` ஒரு: வகுப்பின் எதிர்பார்ப்பு மதிப்பைக் கணக்கிடுவதற்கான முறைகள்: qiskit.quantum_info.Operator.
இதற்கான கட்டமைப்பாளரின் `` விதை`` குவார்க்குக்கு: வகுப்பு: qiskit.circuit.library.QuantumVolume` எண்ணற்ற சீரற்ற ஜெனரேட்டர் பொருள்கள் <https://numpy.org/doc/stable/reference/random/generator.html> __ இப்போது பயன்படுத்தலாம். முன்னதாக, முழு எண்கள் மட்டுமே சரியான உள்ளீடாக இருந்தன. ஒருங்கிணைக்கும் போது இது பயனுள்ளதாக இருக்கும்: வகுப்பு : `~ qiskit.circuit.library.QuantumVolume அதன் சொந்த சீரற்ற எண் தலைமுறையுடன் ஒரு பெரிய செயல்பாட்டின் ஒரு பகுதியாக, எ.கா. வர்க்கத்தின் வரிசையை உருவாக்குகிறது: ~ qiskit.circuit.library.QuantumVolume சுற்றுகள்.
வகுப்பு: ~ qiskit.circuit.QuantumCircuit முறை: மெத்:` ~ qiskit.circuit.QuantumCircuit.compose` ஒரு புதிய குவார்க் `` முன்`` ஐக் கொண்டுள்ளது, இது பிற சுற்றுக்கு பதிலாக பிற சுற்றுக்கு முன்னதாக தயாரிக்க பயன்படுகிறது சேர்க்கிறது. உதாரணத்திற்கு:
from qiskit.circuit import QuantumCircuit circ1 = QuantumCircuit(2) circ2 = QuantumCircuit(2) circ2.h(0) circ1.cx(0, 1) circ1.compose(circ2, front=True).draw(output='mpl')
இரண்டு புதிய பாஸ்கள் ,:class: ~ qiskit.transpiler.passes.SabreLayout மற்றும்:class:` ~ qiskit.transpiler.passes.SabreSwap` தளவமைப்பு மற்றும் ரூட்டிங் சேர்க்கப்பட்டுள்ளது:mod: qiskit.transpiler.passes. இந்த புதிய பாஸ்கள் லி மற்றும் பலர், "Tackling the Qubit Mapping Problem for NISQ-Era Quantum Devices", ASPLOS 2019 இல் வழங்கப்பட்ட வழிமுறையை அடிப்படையாகக் கொண்டவை. :func: q qiskit.compiler.transpile ஐப் பயன்படுத்தும் போது அவை தேர்ந்தெடுக்கப்படலாம். ``layout_method` குவார்க்கை `` 'sabre'` மற்றும் / அல்லது `` routing_method`` ஐ ``' sabre'''க்கு அமைப்பதன் மூலம் செயல்பட:class: ~ qiskit.transpiler.passes.SabreLayout `மற்றும்:class: முறையே q qiskit.transpiler.passes.SabreSwap`.
வழிமுறை :meth:` ~ qiskit.pulse.Schedule.replace ` to the :class:` qiskit.pulse.Schedule ` வகுப்பு, இது ஒரு துடிப்பு அறிவுறுத்தலை மற்றொரு இடத்திற்கு மாற்ற அனுமதிக்கிறது. உதாரணமாக:
.. code-block:: python
qiskit இறக்குமதி துடிப்பு இருந்து
d0 = pulse.DriveChannel (0)
sched = pulse.Schedule ()
old = pulse.Play (pulse.Constant (100, 1. 0), d0) new = pulse.Play (pulse.Constant (100, 0.1), d0)
sched + = old
sched = sched.replace (old, new)
assert sched == pulse.Schedule(new)
புதிய கேட் வகுப்புகளை இவற்றுக்குச் சேர்த்தது:mod: qiskit.circuit.library க்கு :math:` sqrt {X}`, அதன் சரிசெய்தல்:math: sqrt {X} ^ ag dagger, மற்றும் கட்டுப்படுத்தப்பட்ட:math:` sqrt {X} வாயில்கள்:class: ~ qiskit.circuit.library.SXGate` ,:class: ~ qiskit.circuit.library.SXdgGate, மற்றும் :class:` ~ qiskit.circuit.library.CSXGate` . அவற்றை:class: ~ qiskit.circuit.QuantumCircuit பொருளைப் பயன்படுத்தி:meth:` ~ qiskit.circuit.QuantumCircuit.sx` ,:meth: ~ qiskit.circuit.QuantumCircuit.sxdg, மற்றும் :meth: ~ qiskit.circuit.QuantumCircuit.csx முறையே.
:class:` ~ qiskit.circuit.Reset ` வழிமுறையை :meth:` qiskit.quiskit.quantum_info.Statevector.from_instruction` க்கு ஆதரவு சேர்க்கவும். குறிப்பு குவிட் ஒரு சூப்பர் போசிஷன் நிலையில் இருக்கும் விஷயத்தில் பூஜ்ஜிய நிலைக்குத் திட்டத்தைத் தேர்ந்தெடுப்பதில் ஆர்.என்.ஜி மாதிரியை இது உள்ளடக்குகிறது என்பதை நினைவில் கொள்க. சாம்ப்டிங் க்கு விதி :meth:` ~ qiskit.quantum_info.Statevector.seed ` முறையைப் பயன்படுத்தி அமைக்கலாம்.
முறைகள் :meth:` qiskit.circuit.ParameterExpression.subs ` and :meth:` qiskit.circuit.QuantumCircuit.Quiskit.QuantumCircuit.pres_parameters ` இப்போது :class:` ~ qiskit.circuit.ParameterExpression ` இலக்கு மதிப்பு மாற்றாக.
உதாரணமாக
from qiskit.circuit import QuantumCircuit, Parameter p = Parameter('p') source = QuantumCircuit(1) source.rz(p, 0) x = Parameter('x') source.assign_parameters({p: x*x})
┌──────────┐ q_0: ┤ Rz(x**2) ├ └──────────┘தி:meth: ~ qiskit.circuit.QuantumCircuit முறை:meth:` ~ qiskit.circuit.QuantumCircuit.to_gate` இல் ஒரு புதிய குவார்க் உள்ளது `` label`` இது வெளியீட்டிற்கான லேபிளை அமைக்கப் பயன்படுகிறது:class: ~ qiskit.circuit.Gate பொருள். உதாரணத்திற்கு:
from qiskit.circuit import QuantumCircuit circuit_gate = QuantumCircuit(2) circuit_gate.h(0) circuit_gate.cx(0, 1) custom_gate = circuit_gate.to_gate(label='My Special Bell') new_circ = QuantumCircuit(2) new_circ.append(custom_gate, [0, 1], []) new_circ.draw(output='mpl')
சேர்க்கப்பட்டது: வகுப்பு: ~ qiskit.circuit.library.UGate ,: வகுப்பு:` ~ qiskit.circuit.library.CUGate` ,: வகுப்பு: ~ qiskit.circuit.library.PhaseGate, மற்றும்: வகுப்பு:` ~ qiskit.circuit.library.CPhaseGate` உடன் தொடர்புடையது: வகுப்பு: ~ qiskit.circuit.QuantumCircuit முறைகள்: மெத்:` ~ qiskit.circuit.QuantumCircuit.u` ,: மெத்: ~ qiskit.circuit.QuantumCircuit.cucu ,: மெத்: ~ qiskit.circuit.QuantumCircuit.p, மற்றும்: மெத்:` ~ qiskit.circuit.QuantumCircuit.cp`. வகுப்பு: ~ qiskit.circuit.library.UGate கேட் என்பது 3 யூலர் கோணங்களைக் கொண்ட பொதுவான ஒற்றை குவிட் சுழற்சி வாயில் மற்றும்: வர்க்கம்:` ~ qiskit.circuit.library.CUGate` கேட் அதன் கட்டுப்படுத்தப்பட்ட பதிப்பு. : வகுப்பு: ~ qiskit.circuit.library.CUGate க்கு U வாயிலின் சாத்தியமான உலகளாவிய கட்டத்தைக் கணக்கிட 4 அளவுருக்கள் உள்ளன. வகுப்பு: ~ qiskit.circuit.library.PhaseGate மற்றும்: வகுப்பு:` ~ qiskit.circuit.library.CPhaseGate` வாயில்கள் ஒரு தன்னிச்சையான கோணத்தில் பொதுவான கட்ட வாயில் மற்றும் அது கட்டுப்படுத்தப்பட்ட பதிப்பு.
ஒரு புதிய குவார்க், `` க்ரெக்பண்டில்``:func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும் :class:` ~ qiskit.circuit.QuantumCircuit` முறை:meth: q qiskit.circuit.QuantumCircuit இல் சேர்க்கப்பட்டுள்ளது. வரைய. `` உண்மை`` என அமைக்கப்பட்டால், `` உரை`` மற்றும் `` எம்.பி.எல்`` இழுப்பறைகளுக்கான சுற்று காட்சிப்படுத்தல்களில் கிரெக்ஸ் ஒரு வரியில் தொகுக்கப்படும். இயல்புநிலை மதிப்பு `` உண்மை``. முகவரிகள் வெளியீடு # 4290 <https://github.com/Qiskit/qiskit-terra/issues/4290> _.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.measure_all() circuit.draw(output='mpl', cregbundle=True)
ஒரு புதிய குவார்க், `` ஆரம்ப_நிலையம்``:func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும் :class:` ~ qiskit.circuit.QuantumCircuit` முறை:meth: ~ qiskit.circuit.QuantumCircuit இல் சேர்க்கப்பட்டுள்ளது. வரைய. `` உண்மை`` என அமைக்கப்பட்டால், ஆரம்ப நிலை இப்போது அனைத்து இழுப்பறைகளுக்கான சுற்று காட்சிப்படுத்தல்களில் சேர்க்கப்படும். முகவரிகள் வெளியீடு # 4293 <https://github.com/Qiskit/qiskit-terra/issues/4293> _.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.measure_all() circuit.draw(output='mpl', initial_state=True)
'Mpl' டிராயரைப் பயன்படுத்தும் போது லேபிள்கள் இப்போது காண்பிக்கப்படும். 2 வகையான லேபிள்கள் உள்ளன - கேட் லேபிள்கள் மற்றும் கட்டுப்பாட்டு லேபிள்கள். கேட் லேபிள்கள் காட்சியில் கேட் பெயரை மாற்றும். கட்டுப்பாட்டு லேபிள்கள் ஒரு வாயிலுக்கான கட்டுப்பாடுகளுக்கு மேலே அல்லது கீழே காண்பிக்கப்படும். சிக்கல்களை சரிசெய்கிறது # 3766, # 4580 முகவரிகள் சிக்கல்கள் # 3766 <https://github.com/Qiskit/qiskit-terra/issues/3766> _ மற்றும் #4580.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit from qiskit.circuit.library.standard_gates import YGate circuit = QuantumCircuit(2) circuit.append(YGate(label='A Y Gate').control(label='Y Control'), [0, 1]) circuit.draw(output='mpl')
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
பல கட்டுப்படுத்தப்பட்ட எக்ஸ் கேட் (: வகுப்பு: ~ qiskit.circuit.library.MCXGrayCode ,: வகுப்பு:` ~ qiskit.circuit.library.MCXRecursive`, மற்றும்: வகுப்பு: ~ qiskit.circuit.library.MCXVChain `) அவற்றின் பெயர்` பண்புகள் அவற்றின் செயல்பாட்டை இன்னும் துல்லியமாக விவரிக்கும் வகையில் மாற்றப்பட்டுள்ளன:` mcx_gray`,` mcx_recursive`, மற்றும்` mcx_vchain` முறையே. முன்னதாக, இந்த வாயில்கள் `` mcx`` என்ற பெயரை: class: ~ qiskit.circuit.library.MCXGate உடன் பகிர்ந்து கொண்டன, இதனால் இந்த வாயில்கள் தவறாக மாற்றப்பட்டு உருவகப்படுத்தப்பட்டன.
முன்னிருப்பாக :mod:` qiskit.transpiler.preset_passmanagers ` :class:` ~ qiskit.transpiler.passes.UnrollCustomDefinitions ` மற்றும் :class:` ~ qiskit.transpiler.passes.BasisTranslator ` முன்னிருப்பு முன்னிருப்பு :class:` ~ qiskit.transpiler.passes.Unroller . இது புதிய கடைகள் அதிக மறுமலையானவை ஏனெனில் எந்த அடிப்படையில் அமைக்க அனுமதிக்கிறது, எனினும் வெளியீடு வேறுபடும். முந்தைய முன்னிருப்பு பயன்படுத்த நீங்கள் ` ` மொழிபெயர்த்தல் முறையை :func: ~ qiskit.compiler.compiler.transpile ` ` unroller ` `.
: Func: qiskit.converters.circuit_to_gate மற்றும்: func`qiskit.converters.circuit_to_instruction` மாற்றி செயல்பாடுகள் முன்பு தானாகவே உருவாக்கப்பட்ட கேட் அல்லது அறிவுறுத்தலை செயலில்` SessionEquivlanceLibrary` இல் தானாகவே சேர்த்திருந்தன. மாற்றப்பட்ட நிகழ்வுகள் எங்கே, எங்கு பதிவு செய்யப்பட வேண்டும் என்பதைக் குறிப்பிட இந்த மாற்றிகள் இப்போது விருப்பமான `` சமநிலை_ நூலகம்`` முக்கிய வாதத்தை ஏற்றுக்கொள்கின்றன. மாற்றப்பட்ட நிகழ்வை பதிவு செய்யாதபடி இயல்புநிலை நடத்தை மாற்றப்பட்டுள்ளது .
The default value of the
cregbundlekwarg for theqiskit.circuit.QuantumCircuit.draw()method andqiskit.visualization.circuit_drawer()function has been changed toTrue. This means that by default the classical bits in the circuit diagram will now be bundled by default, for example:from qiskit.circuit import QuantumCircuit circ = QuantumCircuit(4) circ.x(0) circ.h(1) circ.measure_all() circ.draw(output='mpl')
உங்கள் சர்க்யூட் வரைபடம் முந்தைய நடத்தையைத் தக்க வைத்துக் கொள்ள விரும்பினால், ஒவ்வொரு கிளாசிக்கல் பிட்டையும் வரைபடத்தில் காண்பிக்க விரும்பினால், நீங்கள்
cregbundleகுவார்க்கைFalseஎன அமைக்கலாம். உதாரணத்திற்கு:from qiskit.circuit import QuantumCircuit circ = QuantumCircuit(4) circ.x(0) circ.h(1) circ.measure_all() circ.draw(output='mpl', cregbundle=False)
class: ~ qiskit.pulse.Schedule உடன் ப்ளோட்டிங் : py: meth:` qiskit.pulse.Schedule.draw` மற்றும்: func: qiskit.visualization.pulse_drawer இனி இயல்புநிலையாக நிகழ்வு அட்டவணையைக் காண்பிக்காது. `` அட்டவணை`` குவார்க்கை `` உண்மை`` என அமைப்பதன் மூலம் இதை மீண்டும் இயக்க முடியும்.
பாஸ்: வகுப்பு: ~ qiskit.transpiler.passes.RemoveResetInZeroState முன்பு முன்னமைக்கப்பட்ட பாஸ் மேலாளரில் சேர்க்கப்பட்டுள்ளது: func:` ~ qiskit.transpiler.preset_passmanagers.level_0_pass_manager` இது `` உகப்பாக்கம்_level = 0`` உடன் பயன்படுத்தப்பட்டது: func: ~ qiskit.compiler.transpile மற்றும்: func:` ~ qiskit.execute.execute` செயல்பாடுகள். இருப்பினும், வகுப்பு: ~ qiskit.transpiler.passes.RemoveResetInZeroState என்பது ஒரு தேர்வுமுறை பாஸ் மற்றும் இது தேர்வுமுறை நிலை 0 இல் சேர்க்கப்படக்கூடாது மற்றும் அகற்றப்பட்டது. உங்களுக்கு தேவைப்பட்டால்
transpile()withRemoveResetInZeroStateதனிப்பயன் பாஸ் நிர்வாகியைப் பயன்படுத்தவும் அல்லதுoptimization_level1, 2, or 3.: Func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும்: மெத்:` qiskit.circuit.QuantumCircuit.draw` முறைக்கு நீக்கப்பட்ட குவார்க் `` வரி_நீளம்`` நீக்கப்பட்டது. இது 0.10.0 வெளியீட்டிலிருந்து நீக்கப்பட்டது. அதற்கு பதிலாக சுற்று வரைபடத்தின் அகலத்தை சரிசெய்ய `` மடிப்பு`` குவார்க்கைப் பயன்படுத்தலாம்.
: மெத்: qiskit.circuit.QuantumCircuit.draw` முறை மற்றும்: func: ~ qiskit.visualization.circuit_drawer க்கான` 'mpl'` வெளியீட்டு முறைக்கு இப்போது` pylatexenc <https: //pylatexenc.readthedocs தேவைப்படுகிறது .io / en / latest / latexencode /> __ நூலகம் நிறுவப்பட வேண்டும். இது ஏற்கனவே காட்சிப்படுத்தலுக்கான விருப்ப சார்புநிலையாக இருந்தது, ஆனால் இதற்கு முன்பு ` 'லேடெக்ஸ்`` வெளியீட்டு முறைக்கு மட்டுமே இது தேவைப்பட்டது. மேட்லோட்லிப் டிராயருக்கு இது இப்போது தேவைப்படுகிறது, ஏனெனில் மேட்லோட்லிப்பின் `கணிதத்துடன் சரியான அளவிலான வாயில்களைக் கையாள இது தேவைப்படுகிறது.
இது :class:` qiskit.qasm.Qasm ` மற்றும் :class:` qiskit.qasm.Qasm.QasmParser ` அகற்றப்பட்டது. இந்த முறைகள் 0.9.0 விடுதலை இருந்து விடுதலை செய்யப்பட்டு வருகின்றது. :meth:` qiskit.qasm.Qasm.Qasm.generate_tokens ` and :meth:` qiskit.qasm.Qasm.QasmParser.generate_tokens ` முறைகள் பதிலாக பயன்படும்.
நீக்கப்பட்ட குவார்க் `` சேனல்கள்_டொ_பிளாட்``: மெத்: qiskit.pulse.Schedule.draw ,: மெத்:` qiskit.pulse.Instruction.draw`, `` qiskit.visualization.pulse.matplotlib.ScheduleDrawer.draw`` மற்றும்: func: ~ qiskit.visualization.pulse_drawer அகற்றப்பட்டது. 0.11.0 வெளியீட்டிலிருந்து குவார்க் நீக்கப்பட்டது மற்றும் அதற்கு பதிலாக `` சேனல்கள்`` குவார்க் மாற்றப்பட்டது, இது ஒரே மாதிரியாக செயல்படுகிறது, அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
வகுப்பின் நீக்கப்பட்ட `` சர்க்யூட்_இன்ஸ்ட்ரக்ஷன்_மாப்`` பண்புக்கூறு: qiskit.providers.models.PulseDefaults வகுப்பு நீக்கப்பட்டது. இந்த பண்பு 0.12.0 வெளியீட்டிலிருந்து நீக்கப்பட்டது மற்றும் அதற்கு பதிலாக பயன்படுத்தக்கூடிய `` அறிவுறுத்தல்_ அட்டவணை_மாப்`` பண்புக்கூறு மாற்றப்பட்டது.
` ` ஒன்றியம் : பி: வகுப்பு: ` ` qiskit.pulse.Schedule ` and :py:class: `~ qiskit.pulse.Instruction ` 0.12.0 விடுதலை செய்யப்பட்டு இப்போது நீக்கப்பட்டு வருகின்றது. :meth: qiskit.pulse.Schedule.Schedule.insert ` மற்றும் :meth:` qiskit.pulse.Instruction.meth ` முறைகள் பதிலாக kwarg ` ` time=0 `.
பை: வகுப்பு: ~ qiskit.pulse.Schedule மற்றும்: py: class:` ~ qiskit.pulse.Instruction` இன் `` வரைய`` முறைக்கு நீக்கப்பட்ட `` அளவிடுதல்`` வாதம் `` உடன் மாற்றப்பட்டுள்ளது. 0.12.0 வெளியீட்டிலிருந்து அளவுகோல் `` இப்போது அகற்றப்பட்டது. அதற்கு பதிலாக `` அளவு`` குவார்க்கைப் பயன்படுத்தவும்.
பை: வகுப்பு: ~ qiskit.pulse.Schedule மற்றும்: py: class:` ~ qiskit.pulse.Instruction` இன் `` வரைய`` முறைக்கு நீக்கப்பட்ட `` அளவிடுதல்`` வாதம் `` உடன் மாற்றப்பட்டுள்ளது. 0.13.0 வெளியீட்டிலிருந்து அளவுகோல் `` இப்போது அகற்றப்பட்டது. அதற்கு பதிலாக `` அளவு`` குவார்க்கைப் பயன்படுத்தவும்.
`` கட்டளைகள்`` வகுப்புகள் அடங்கிய `` qiskit.pulse.commands`` தொகுதி 0.13.0 வெளியீட்டில் நீக்கப்பட்டது, இப்போது அகற்றப்பட்டது. நீங்கள் இன்னும் கட்டளைகளைப் பயன்படுத்துகிறீர்கள் என்றால் உங்கள் துடிப்பு குறியீட்டை மேம்படுத்த வேண்டும். உதாரணத்திற்கு:
பழைய
புதிய
`` கட்டளை (ஆர்க்ஸ்) (சேனல்) ``
" அறிவுறுத்தல் (ஆர்க்ஸ், சேனல்) ``
Acquire(duration)(AcquireChannel(0))
Acquire(duration, AcquireChannel(0))
Delay(duration)(channel)
Delay(duration, channel)
FrameChange(angle)(DriveChannel(0))
# FrameChange was also renamed ShiftPhase(angle, DriveChannel(0))
Gaussian(...)(DriveChannel(0))
# Pulses need to be `Play`d Play(Gaussian(...), DriveChannel(0))
எல்லா வகுப்பு மற்றும் செயல்கூறு ` க்குள் qiskit.tool.qi ` ` கூறு 0.12.0 வெளியீட்டில் துண்டிக்கப்பட்டு இப்போது நீக்கப்பட்டு வருகின்றது. பதிலாக :mod:` qiskit.quiskit.quiskit.quantum_info ` ல் மற்றும் புதிய முறைகள் மற்றும் வகுப்புகளைப் பயன்படுத்தி அது குவாண்ட் மாநிலங்கள் மற்றும் இயக்குநர்களுடன் பணிபுரிகின்றது.
`` Qiskit.quantum_info.basis_state`` மற்றும் `` qiskit.quantum_info.projector`` செயல்பாடுகள் கிஸ்கிட் டெர்ரா 0.12.0 இன் படி நீக்கப்பட்டன. மாநிலங்களுடன் இணைந்து பணியாற்ற: class: qiskit.quantum_info.QuantumState மற்றும் அதன் வழித்தோன்றல்கள்: வர்க்கம்:` qiskit.quantum_info.Statevector` மற்றும்: வகுப்பு: qiskit.quantum_info.DensityMatrix ஐப் பயன்படுத்தவும்.
இதிலிருந்து ஊடாடும் சதி செயல்பாடுகள்: மோட்: qiskit.visualization,` iplot_bloch_multivector`,` iplot_state_city`,` iplot_state_qsphere`,` iplot_state_hinton`,` iplot_histogram`,` iplot_histolog_ மேட்லோட்லிப் அடிப்படையிலான சமமானவர்களுக்கு நீக்கப்பட்ட மாற்றுப்பெயர்கள் மற்றும் இனி ஊடாடும். இந்த செயல்பாடுகளை நம்பியிருந்த ஹோஸ்ட் செய்யப்பட்ட நிலையான JS குறியீடு அகற்றப்பட்டது, மேலும் அவை இனி இயங்காது. ஒரு சாதாரண தேய்மானம் சாத்தியமில்லை, ஏனெனில் அவர்கள் நம்பியிருந்த தளம் இனி இல்லை.
மார்ஷ்மெல்லோவைப் பயன்படுத்தி சரிபார்ப்பு கூறுகள்: mod: qiskit.validation டெர்ராவிலிருந்து அகற்றப்பட்டுள்ளன. டெர்ராவில் எந்தவொரு பொருளையும் உருவாக்க அவை இனி பயன்படுத்தப்படுவதில்லை என்பதால்.
: Mod: qiskit.result இல் உள்ள மார்ஷ்மெல்லோ ஸ்கீமா வகுப்புகள் நீக்கப்பட்டன, ஏனெனில் அவை இனி: class:` qiskit.result.Result` வகுப்பால் பயன்படுத்தப்படாது.
வகுப்பு: qiskit.result.Result வகுப்பிற்கான: மெத்:` ~ qiskit.result.Result.to_dict` முறையின் வெளியீடு இனி நேரடி JSON சீரியலைசேஷனுக்கான வடிவமைப்பில் இல்லை. இந்த வகுப்புகளின் நிகழ்வுகளில் உள்ள உள்ளடக்கத்தைப் பொறுத்து இயல்புநிலை JSON குறியாக்கிக்கு எவ்வாறு கையாள்வது என்று தெரியாத வகைகள் இருக்கலாம், எடுத்துக்காட்டாக சிக்கலான எண்கள் அல்லது எண்ணற்ற வரிசைகள். `` To_dict () `` முறையின் வெளியீட்டை நீங்கள் JSON தொடர்ச்சியாக வரிசைப்படுத்துகிறீர்கள் என்றால், உங்கள் JSON குறியாக்கி இந்த வகைகளைக் கையாள முடியும் என்பதை உறுதிப்படுத்த வேண்டும்.
ஒரே நேரத்தில் பல குவிட்களைப் பெறுவதற்கான விருப்பம் 0.12.0 வெளியீட்டில் நீக்கப்பட்டது, இப்போது அகற்றப்பட்டது. குறிப்பாக, init `` mem_slots`` மற்றும் `` reg_slots`` ஆகியவை வகுப்பிலிருந்து நீக்கப்பட்டன: qiskit.pulse.instructions.Acquire, மற்றும்` சேனல்`,` mem_slot` மற்றும்` reg_slot ஒரு பட்டியல் உள்ளீடாக வழங்கப்பட்டால் `பிழை எழுப்புகிறது.
மரபு நெட்வொர்க் <https://networkx.github.io/> __ அடிப்படையிலான: வர்க்கம்: மரபுக்கு விருப்பமான குறைவை வழங்க 0.13.0 வெளியீட்டில் அறிமுகப்படுத்தப்பட்ட `` USE_RETWORKX`` சூழல் மாறியைப் பயன்படுத்துவதற்கான ஆதரவு. qiskit.dagcircuit.DAGCircuit செயல்படுத்தல் நீக்கப்பட்டது. ரீட்வொர்க்ஸுக்கு மாற்றும்போது ஒரு வெளியீட்டிற்கான புதிய செயல்படுத்தலில் சிக்கலை எதிர்கொண்ட எந்தவொரு பயனருக்கும் நிவாரண வால்வை வழங்குவதற்காக மட்டுமே இந்த கொடி கருதப்பட்டது.
உள்ள தொகுதி: mod: qiskit.pulse அட்டவணை-> அட்டவணை மாற்றங்களுக்கு பொறுப்பானது` reschedule.py` இலிருந்து` உருமாற்றங்கள்.பீ` என மறுபெயரிடப்பட்டது. முந்தைய இறக்குமதி பாதை நீக்கப்பட்டது. உங்கள் குறியீட்டை மேம்படுத்த
from qiskit.pulse.rescheduler import <X>
இதை மாற்ற வேண்டும்:
from qiskit.pulse.transforms import <X>
முந்தைய வெளியீடுகளில் ஒரு: வகுப்பு: ~ qiskit.transpiler.PassManager` டிரான்ஸ்ஃபர்மேஷன் பாஸ்` வகுப்புகளை மாற்றியமைக்க அனுமதிக்கவில்லை: வர்க்கம்:` ~ qiskit.transpiler.PropertySet`. இந்த கட்டுப்பாடு நீக்கப்பட்டது, எனவே ஒரு `` டிரான்ஸ்ஃபர்மேஷன் பாஸ்`` வகுப்பு இப்போது வகுப்பு: ~ qiskit.transpiler.PropertySet மற்றும்: வகுப்பு:` ~ qiskit.transpiler.DAGCircuit` இன் போது: மெத்: ` ~ qiskit.transpiler.PassManager.run`. வகுப்பு: ~ qiskit.transpiler.PassManager இல் பின்னர் தேர்ச்சி பெற வேண்டிய உள் நிலையைக் கொண்ட` டிரான்ஸ்ஃபர்மேஷன் பாஸ்` வகுப்புகளை மிகவும் திறமையாக எளிதாக்குவதற்காக இந்த மாற்றம் செய்யப்பட்டது. இந்த மாற்றம் இல்லாமல் இரண்டாவது தேவையற்ற `` அனாலிசிஸ் பாஸ்`` உள் நிலையை மீண்டும் உருவாக்க அவசியமாக இருந்திருக்கும், இது குறிப்பிடத்தக்க மேல்நிலைகளை சேர்க்கக்கூடும்.
தேய்மான குறிப்புகள்¶
: Mod: qiskit.visualization செயல்பாடுகளுக்கான முதல் நிலை அளவுருவின் பெயர்: func:` ~ qiskit.visualization.plot_state_hinton` ,: func: ~ qiskit.visualization.plot_bloch_multivector ,: func:` q qiskit.visualization .plot_state_city` ,: func: ~ qiskit.visualization.plot_state_paulivec, மற்றும்: func:` ~ qiskit.visualization.plot_state_qsphere` `` rho`` இலிருந்து `` state`` என மறுபெயரிடப்பட்டுள்ளது. `` ரோ`` என்ற பெயரில் மதிப்பைக் கடந்து செல்வது நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் வாதத்தை நிலைநிறுத்த வேண்டும் அல்லது புதிய அளவுரு பெயரை `` மாநிலம்`` பயன்படுத்த வேண்டும்.
`` Qiskit.pulse.pulse_lib`` தொகுதி நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இதற்கு மறுபெயரிடப்பட்டுள்ளது: py: mod: qiskit.pulse.library, அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
வகுப்பு: qiskit.circuit.QuantumCircuit முறை: மெத்:` ~ qiskit.circuit.QuantumCircuit.mirror` நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். முறை: மெத்: qiskit.circuit.QuantumCircuit.reverse_ops அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும், ஏனெனில் பிரதிபலிப்பு சுற்றுக்கான வெளியீட்டு வினாடிகளை மாற்றுவதில் குழப்பமடையக்கூடும். தி: மெத்: ~ qiskit.circuit.QuantumCircuit.reverse_ops முறை பிரதிபலிப்புக்கு பதிலாக பயன்படுத்தப்படும் வாயில்களின் வரிசையை மட்டுமே மாற்றுகிறது.
தி: மெத்: ~ qiskit.dagcircuit.DAGCircuit.qubits மற்றும்: மெத்:` ~ qiskit.dagcircuit.DAGCircuit.clbits` இன் முறைகள்: வகுப்பு: qiskit.dagcircuit.DAGCircuit நீக்கப்பட்டன மற்றும் எதிர்காலத்தில் அகற்றப்படும் வெளியீடு. அவை அதே பெயரின் பண்புகளுடன் மாற்றப்பட்டுள்ளன ,: attr: qiskit.dagcircuit.DAGCircuit.qubits மற்றும்: attr:` qiskit.dagcircuit.DAGCircuit.clbits`, மற்றும் தற்காலிக சேமிப்பில் உள்ளன, எனவே அவற்றை அணுகுவது மிக விரைவானது.
`` Qiskit.pulse.library.ParametricPulse`` பெறப்பட்ட வகுப்புகளுக்கான `` get_sample_pulse`` முறை (எடுத்துக்காட்டாக: வர்க்கம்: ~ qiskit.pulse.library.GaussianSquare) நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இது `` get_waveform`` முறையால் மாற்றப்பட்டுள்ளது (எடுத்துக்காட்டாக: மெத்: ~ qiskit.pulse.library.GaussianSquare.get_waveform) இது ஒரே மாதிரியாக நடந்து கொள்ள வேண்டும்.
விருப்பமான `` நிபந்தனை`` வாதத்தின் பயன்பாடு: வகுப்பு: qiskit.dagcircuit.DAGNode ,: மெத்:` qiskit.dagcircuit.DAGCircuit.apply_operation_back`, மற்றும்: meth: qiskit.dagcircuit.DAGCircuit.apply_operation_front has நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக அமைக்கப்பட்ட `` கட்டுப்பாடு``: வகுப்பு: qiskit.circuit.Instruction நிகழ்வுகள் ஒரு: வகுப்பில் சேர்க்கப்படுகின்றன:` ~ qiskit.dagcircuit.DAGCircuit` பயன்படுத்தப்பட வேண்டும்.
வர்க்கத்தின் `` set_atol`` மற்றும் `` set_rtol`` வகுப்பு முறைகள்: qiskit.quantum_info.BaseOperator மற்றும்: class:` qiskit.quantum_info.QuantumState` வகுப்புகள் (மற்றும் அவற்றின் துணைப்பிரிவுகளான: class: q qiskit .quantum_info.Operator மற்றும்: class: qiskit.quantum_info.DensityMatrix) நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக `` .atol`` மற்றும் `` .rtol`` பண்புகளுக்கான மதிப்பு வகுப்பில் அமைக்கப்பட வேண்டும். உதாரணத்திற்கு:
from qiskit.quantum_info import ScalarOp ScalarOp.atol = 3e-5 op = ScalarOp(2)
இதிலிருந்து ஊடாடும் செயல்பாடுகள்: மோட்: qiskit.visualization,` iplot_bloch_multivector`,` iplot_state_city`,` iplot_state_qsphere`,` iplot_state_hinton`,` iplot_histogram`,` iplot_histolog_ நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். மேட்லோட்லிப் அடிப்படையிலான சமமான செயல்பாடுகள்: mod: qiskit.visualization ,: func:` ~ qiskit.visualization.plot_bloch_multivector` ,: func: ~ qiskit.visualization.plot_state_city ,: func:` ~ qiskit.visualization.splot_state_spate_state அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
வகுப்பின் `` பெறுகிறது``, `` மெம்_ஸ்லாட்டுகள்``, மற்றும் `` ரெக்_ஸ்லாட்டுகள்`` ஆகிய பண்புகள்: qiskit.pulse.instructions.Aququ` துடிப்பு அறிவுறுத்தல் நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அவை வெறும் நகல்கள்: attr: ~ qiskit.pulse.instructions.Acquire.channel ,: attr:` ~ qiskit.pulse.instructions.Acquire.mem_slot`, மற்றும்: attr: ~ qiskit.pulse.instructions.Acquire .reg_slot முறையே இப்போது ஒற்றை: வகுப்பில் பல குவிட்களைப் பயன்படுத்துவதற்கான ஆதரவை நீக்கியது: ~ qiskit.pulse.instructions.Acquire அறிவுறுத்தல் நீக்கப்பட்டது.
இதிலிருந்து `` மாதிரி துடிப்பு`` வகுப்பு: மோட்: qiskit.pulse என மறுபெயரிடப்பட்டது: py: class:` ~ qiskit.pulse.library.Waveform`. `` மாதிரி துடிப்பு`` நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும்.
பாணி அகராதி விசை `` க்ரெக்பண்டில்`` நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். இதை மாற்றியமைத்த குவார்க் `` கிரெக்பண்டில்``: func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும்: வர்க்கம்:` ~ qiskit.circuit.QuantumCircuit` முறை: மெத்: ~ qiskit.circuit.QuantumCircuit . இழுக்க.
பிழை திருத்தங்கள்¶
வகுப்பு: qiskit.circuit.QuantumCircuit முறை: attr:` ~ qiskit.circuit.QuantumCircuit.num_nonlocal_gates` முன்பு பல-குவிட்: வகுப்பு: qiskit.circuit.Instruction பொருள்கள் (எடுத்துக்காட்டாக, வகுப்பு:` ~ qiskit.circuit.library.Barrier`) அதன் உள்ளூர் அல்லாத வாயில்களின் எண்ணிக்கையில். இது சரி செய்யப்பட்டது, எனவே உள்ளூர் அல்லாதவை: வர்க்கம்: ~ qiskit.circuit.Gate பொருள்கள் கணக்கிடப்படுகின்றன. # 4500 <https://github.com/Qiskit/qiskit-terra/issues/4500> __
: class: ~ qiskit.circuit.ControlledGate நிகழ்வுகள்` ctrl_state` ஒரு தொகுப்பைக் கொண்டு சில சந்தர்ப்பங்களில் ஒப்பிடப்பட்ட வாயில்கள் சமமாக இருந்தாலும் கூட சமமாக மதிப்பிடப்படவில்லை. # 4573 <https://github.com/Qiskit/qiskit-terra/issues/4573> __
ஒரு: வகுப்பிலிருந்து ஒரு பிட்டை அணுகும்போது: qiskit.circuit.QuantumRegister அல்லது: class:` qiskit.circuit.ClassicalRegister` ஐ குறியீட்டால் எண்ணற்ற முழு வகைகள்` <https://numpy.org/doc/stable/user /basics.types.html>`__ முன்பு ஒரு `` சர்க்யூட் பிழை`` விதிவிலக்கை உயர்த்தும். இது தீர்க்கப்பட்டுள்ளது, எனவே பைத்தானின் உள்ளமைக்கப்பட்ட `` int`` வகைக்கு கூடுதலாக எண்ணற்ற வகைகளையும் பயன்படுத்தலாம். # 3929 <https://github.com/Qiskit/qiskit-terra/issues/3929> __ திருத்தங்கள்.
ஒரு பிழை சரி செய்யப்பட்டது: முதல்: வகுப்பு: qiskit.pulse.configuration.Kernel அல்லது: class:` qiskit.pulse.configuration.Discriminator` ஒரு: வகுப்பிற்கு: qiskit.pulse.Acquire இருந்தபோது பயன்படுத்தப்பட்டது ஒரு: வகுப்பில் ஒரே நேரத்தில் பல பெறுகிறது: qiskit.pulse.Schedule.
கட்டமைக்க SI அலகு பயன்பாடு: py: class: qiskit.pulse.SetFrequency பொருள்கள் Hz இல் உள்ளன, ஆனால் ஒரு: class:` ~ qiskit.qobj.PulseQobjInstruction` பொருள் ஒரு: py: class: ~ qiskit .pulse.SetFrequency உதாரணமாக இது GHz ஆக மாற்றப்பட வேண்டும். இந்த மாற்றம் முந்தைய வெளியீடுகளில் இல்லை, சரி செய்யப்பட்டது.
முன்னதாக கட்டுப்பாட்டு வினாடிகளின் எண்ணிக்கையை பூஜ்ஜியமாக அமைக்க முடிந்தது, இந்த விஷயத்தில் அசல், கட்டுப்படுத்தப்படாத, செயல்பாடு திரும்பப் பெறப்படும். அழைப்பாளர் ஒரு பண்புகளை மட்டுமே அணுக முயற்சித்தால் இது ஒரு `` பண்புக்கூறு பிழை`` எழுப்பப்படக்கூடும்: வர்க்கம்: ~ qiskit.circuit.ControlledGate பொருள் உள்ளது. செல்லுபடியாகும் மதிப்பு பயன்படுத்தப்படுவதை சரிபார்க்க, attr: ~ qiskit.circuit.ControlledGate.num_ctrl_qubits க்கு ஒரு பெறுநர் மற்றும் அமைப்பாளரைச் சேர்ப்பதன் மூலம் இது சரி செய்யப்பட்டது. # 4576 <https://github.com/Qiskit/qiskit-terra/issues/4576> __
ஒரு: வகுப்பு : ~ qiskit.circuit.Gate பொருள்கள்: attr:` ~ qiskit.circuit.Gate.definition` ஐ மாற்றியமைப்பதன் மூலம் திறந்த கட்டுப்பாடுகள் செயல்படுத்தப்பட்டன. இருப்பினும், அடிப்படை தொகுப்பில் கேட் ஏற்கனவே இருக்கும்போது, இந்த வரையறை பயன்படுத்தப்படவில்லை, இதன் விளைவாக தவறான சுற்றுகள் இடமாற்றத்திற்குப் பிறகு ஒரு பின்தளத்தில் அனுப்பப்பட்டன. திறந்த கட்டுப்பாடுகளுடன் கட்டுப்படுத்தப்பட்ட வாயிலை எதிர்கொண்டால், வரையறையைப் பயன்படுத்த: வர்க்கம்: ~ qiskit.transpiler.Unroller பாஸை மாற்றுவதன் மூலம் இது சரி செய்யப்பட்டது. திருத்தங்கள் # 4437 <https://github.com/Qiskit/qiskit-terra/issues/4437> __
வகுப்பில் உள்ள `` செருகு_ தடைகள்`` முக்கிய வாதம்: ~ qiskit.circuit.library.ZZFeatureMap வகுப்பு உண்மையில் ஹடாமார்ட் அடுக்குகளுக்கும் பரிணாம அடுக்குகளுக்கும் இடையில் தடைகளைச் சேர்க்கவில்லை. தடைகள் இப்போது சரியாக செருகப்படுவதற்கு இது சரி செய்யப்பட்டது.
மூன்று அல்லது அதிக குறும்படங்களுடன் சில வாயில்கள் குறிப்பிட்ட நிகழ்வுகளுக்குள் ஒழுங்குபடுத்துவதற்கு மாறுபடும். Refer to `#4577 <https: //github.com/Qiskit/qiskit-terra/issues/4577 ` மேலும் விவரம்.
மேட்லோட்லிப் (`` 'எம்.பி.எல்``) வெளியீட்டு பின்தளத்தில்: வகுப்பு: qiskit.circuit.QuantumCircuit முறை: மெத்:` q qiskit.circuit.QuantumCircuit.draw` மற்றும்: func: qiskit.visualization.circuit_drawer குவார்க் ` அளவு`` அமைக்கப்பட்டபோது `செயல்பாடு சரியாக அளவிடப்படவில்லை. எழுத்துருக்கள் மற்றும் வரி அகலங்கள் படத்தின் மீதமுள்ள அளவோடு அளவிடப்படவில்லை. இது சரி செய்யப்பட்டது மற்றும் சுற்று வரைபடத்தின் அனைத்து கூறுகளும் இப்போது சரியாக அளவிடப்படுகின்றன. உதாரணத்திற்கு:
from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.h(0) circuit.cx(0, 1) circuit.draw(output='mpl', scale=0.5)
# 4179 <https://github.com/Qiskit/qiskit-terra/issues/4179> _ திருத்தங்கள்.
துவக்க அல்லது உருவாகும் இடத்தை சரிசெய்கிறது: வர்க்கம்: qiskit.quantum_info.Statevector மற்றும்: வகுப்பு:` qiskit.quantum_info.DensityMatrix` வகுப்புகள் சுற்றுகள் மூலம் சுற்றுகள் மூலம்: வர்க்கம்: q qiskit.circuit.Barrier அறிவுறுத்தல்கள் ஒரு விதிவிலக்கை எழுப்புகின்றன. திருத்தங்கள் # 4461 <https://github.com/Qiskit/qiskit-terra/issues/4461> __
முன்னதாக ஒரு: வகுப்பு: ~ qiskit.circuit.QuantumCircuit இல் ஒரு: வகுப்பு:` ~ qiskit.circuit.Gate` ஒரு கிளாசிக்கல் நிபந்தனையுடன் இருக்கும்போது, `` உகப்பாக்கம்_ நிலை = 3`` இல்: டிரான்ஸ்பைலர் சில நேரங்களில் தோல்வியடையும்: func: ` ~ qiskit.compiler.transpile` அல்லது: func: ~ qiskit.execute.execute` வரம்பற்ற லோகல் பிழை` ஐ உயர்த்துகிறது. கிளாசிக்கல் நிலைக்கு கணக்கில் திருத்தங்கள்: class: ~ qiskit.transpiler.passes.ConsolidateBlocks பாஸைப் புதுப்பிப்பதன் மூலம் இது சரி செய்யப்பட்டது .
சில சூழ்நிலைகளில் நீண்ட வாயில் மற்றும் பதிவு பெயர்கள் நிரம்பி வழியும், அல்லது `` 'எம்.பி.எல்`` வெளியீட்டு பின்தளத்தில்: மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func:` qiskit.visualization.circuit_drawer` செயல்பாடு. விகிதாசார எழுத்துருவுக்கு சரியான உரை அகலங்களைப் பயன்படுத்துவதன் மூலம் இது சரி செய்யப்பட்டது. திருத்தங்கள் ` #4611, #4605, #4545, #4497, #4449, and #3641.
மெத்: qiskit.circuit.QuantumCircuit.draw` அல்லது: func: qiskit.visualization.circuit_drawer இல்` பாணி குவார்க்கைப் பயன்படுத்தும் போது,` 'mpl` வெளியீட்டைக் கொண்டு அகராதி விசையை` ' showindex'` உண்மை` என அமைக்கப்பட்டால், நெடுவரிசையின் மேலே உள்ள குறியீட்டு எண்கள் சரியாக வரிசைப்படுத்தப்படவில்லை. இது சரி செய்யப்பட்டது.
மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func:` qiskit.visualization.circuit_drawer` செயல்பாடு மற்றும் அளவிடும் `` 'mpl`` வெளியீட்டு பின்தளத்தில் `` cregbunde = True`` ஐப் பயன்படுத்தும் போது இரண்டாவது மடங்கு, அளவீட்டு அம்பு க்ரெக் எண்ணிக்கையை மேலெழுதும். இதைத் தடுக்க எண்ணிக்கை இடதுபுறமாக நகர்த்தப்பட்டது. திருத்தங்கள் ` #4148.
: மெத்: qiskit.circuit.QuantumCircuit.draw` முறை மற்றும்: func: qiskit.visualization.circuit_drawer செயல்பாடு: வகுப்பு:` ~ qiskit.circuit.library. CSwapGate` வாயில்கள் மற்றும் ஒரு கட்டுப்படுத்தப்பட்ட:வகுப்பு : ~ qiskit.circuit.library.RZZGate வாயில்கள் இப்போது ஒரு பெட்டியில் இல்லாமல் அவற்றின் பொருத்தமான சின்னங்களுடன் காண்பிக்கப்படுகின்றன.
: மெத்: qiskit.circuit.QuantumCircuit.draw` முறை மற்றும்: func: qiskit.visualization.circuit_drawer செயல்பாடு கட்டுப்படுத்தப்பட்ட வாயில்களைப் பயன்படுத்தி` 'mpl' வெளியீட்டு பின்தளத்தில் பயன்படுத்தும் போது: மெத்:` q கிஸ்கிட் .circuit.QuantumCircuit.to_gate` முறை சரியாக இடைவெளியில் இல்லை மற்றும் சுற்று வரைபடத்தில் உள்ள மற்ற வாயில்களுடன் ஒன்றிணைக்க முடியும். இந்த சிக்கல் சரி செய்யப்பட்டது.
மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func,:` போன்ற காரணிகள், போன்ற அணிகளை கொண்டு qiskit.visualization.circuit_drawer` செயல்பாடு வாயில்கள்: வர்க்கம் ` 'mpl'`` வெளியீடு பின்தளம் பயன்படுத்தும் போது: ~ qiskit.extensions.HamiltonianGate, அவற்றைச் சுற்றி அதிக இடத்துடன் இனி காண்பிக்கப்படாது. # 4352 <https://github.com/Qiskit/qiskit-terra/issues/4352> __ திருத்தங்கள்.
மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func,:` qiskit.visualization.circuit_drawer` செயல்பாடு நேரடியாக துவக்குவதில் உருவாக்கப்படும் ஜெனரிக் வாயில்கள்: வர்க்கம்: ` 'mpl'`` வெளியீடு பின்தளம் பயன்படுத்தும் போது` qiskit .circuit.Gate` முறை இப்போது வாயிலுக்கு சரியான பின்னணி நிறத்தைக் காண்பிக்கும். # 4496 <https://github.com/Qiskit/qiskit-terra/issues/4496> __ திருத்தங்கள்.
மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func:` qiskit.visualization.circuit_drawer` செயல்பாட்டிற்கான `` 'mpl'` வெளியீட்டு பின்தளத்தில் பயன்படுத்தும் போது: class: ~ qiskit.extensions.Isometry அல்லது: class:` ~ qiskit.extensions.Initialize` சரி செய்யப்பட்டது. # 4439 <https://github.com/Qiskit/qiskit-terra/issues/4439> __ திருத்தங்கள்.
: மெத்: qiskit.circuit.QuantumCircuit.draw` முறை மற்றும்: func: qiskit.visualization.circuit_drawer செயல்பாட்டிற்கான` 'mpl' வெளியீட்டு பின்தளத்தில் பயன்படுத்தும் போது திறந்த-கட்டுப்படுத்தப்பட்ட சில வாயில்கள் திறந்த திறந்த காட்சியைக் சரியாகக் காட்டவில்லை கட்டுப்பாடுகள். இது சரி செய்யப்பட்டது, இதனால் திறந்த கட்டுப்பாடுகள் திறந்த வட்டங்களாக சரியாக காட்டப்படும். # 4248 <https://github.com/Qiskit/qiskit-terra/issues/4248> __ திருத்தங்கள்.
மெத்: qiskit.circuit.QuantumCircuit.draw முறை மற்றும்: func,:` qiskit.visualization.circuit_drawer` செயல்பாடு நேரடியாக துவக்குவதில் உருவாக்கப்படும் ஜெனரிக் வாயில்கள்: வர்க்கம்: ` 'mpl'`` வெளியீடு பின்தளம் பயன்படுத்தும் போது` qiskit .circuit.Gate` முறை இப்போது வாயிலுக்கு சரியான பின்னணி நிறத்தைக் காண்பிக்கும். # 4496 <https://github.com/Qiskit/qiskit-terra/issues/4496> __ திருத்தங்கள்.
இதிலிருந்து அளவுரு பருப்பு வகைகள்: mod: qiskit.pulse.library.discrete இப்போது முன்னிருப்பாக அளவுரு பருப்புகளின் பூஜ்ஜிய முனைகளைக் கொண்டுள்ளது. இறுதி புள்ளிகள் ஒரு செயல்பாட்டிற்கு வரையறுக்கப்படுகின்றன: கணிதம்: f (x) பின்னர்: கணிதம்: f (-1) = f (காலம் + 1) = 0. திருத்தங்கள் # 4317 <https://github.com/Qiskit/qiskit-terra/issues/4317> __
பிற குறிப்புகள்¶
முன்னர்: மார்ஷ்மெல்லோ நூலகத்தைப் பயன்படுத்தி கட்டப்பட்ட வகுப்பு: qiskit.result.Result வகுப்பு இனி மார்ஷ்மெல்லோவைச் சார்ந்து இருக்கக்கூடாது என்று மறுசீரமைக்கப்பட்டுள்ளது. இந்த புதிய செயல்படுத்தல் ஒரு தடையற்ற மாற்றமாக இருக்க வேண்டும், ஆனால் முன்னர் மார்ஷ்மெல்லோவிலிருந்து பெறப்பட்ட சில குறிப்பிட்ட நடத்தை செயல்படாது. ஏதேனும் பொருந்தாத தன்மைகளுக்கு சிக்கல்களைத் தாக்கல் செய்க.
Aer 0.6.1¶
முன்னுரை¶
இந்த 0.6.0 வெளியீட்டில் ஏர் வழங்குநரில் உள்ள அனைத்து சிமுலேட்டர்களுக்கான பல செயல்திறன் மேம்பாடுகள் மற்றும் மூலத்திலிருந்து உருவாக்கும்போது உருவாக்க அமைப்பில் குறிப்பிடத்தக்க மாற்றங்கள் ஆகியவை அடங்கும். முக்கிய மாற்றங்கள் சிம்ட் திசையன்மயமாக்கலுக்கான ஆதரவு, பிணைப்பு-பரிமாணக் குறைப்பு வழியாக மேட்ரிக்ஸ் தயாரிப்பு நிலை முறையின் தோராயமாக்கல், மிகவும் திறமையான பவுலி எதிர்பார்ப்பு மதிப்பு கணக்கீடு மற்றும் சி ++ முடிவு பொருள்களின் பைதான் மாற்றத்தில் பெரிதும் மேம்படுத்தப்பட்ட செயல்திறன். மூலத்திலிருந்து உருவாக்கும்போது பொதுவான சி ++ சார்புகளை நிர்வகிக்க கோனன் <https://conan.io/> __ ஐப் பயன்படுத்த உருவாக்க அமைப்பு மேம்படுத்தப்பட்டது.
புதிய அம்சங்கள்¶
QasmSimulator இன் "statevector" மற்றும் "statevector_gpu" முறைகளுக்கு அடர்த்தி மேட்ரிக்ஸ் ஸ்னாப்ஷாட் ஆதரவைச் சேர்க்கவும்.
அடர்த்தி மேட்ரிக்ஸ் ஸ்னாப்ஷாட்களை குறிப்பிட்ட குவிட்களில் அனுமதிக்கவும், எல்லா குவிட்களையும் மட்டுமல்ல. இது மீதமுள்ள குவிட்களில் மாநிலத்தின் பகுதியளவு தடயத்தை கணக்கிடுகிறது.
வர்க்கத்தின் " அடர்த்தி_மாட்ரிக்ஸ் " உருவகப்படுத்துதல் முறைக்கு பவுலி எதிர்பார்ப்பு மதிப்பு ஸ்னாப்ஷாட் ஆதரவைச் சேர்க்கிறது: qiskit.providers.aer.QasmSimulator. வகுப்பு: qiskit.providers.aer.extensions.SnapshotExpectationValue நீட்டிப்பைப் பயன்படுத்தி சுற்றுகளுக்கு ஸ்னாப்ஷாட்களைச் சேர்க்கவும்.
Greatly improves performance of the Pauli expectation value snapshot algorithm for the "statevector", "statevector_gpu, "density_matrix", and "density_matrix_gpu" simulation methods of the
qiskit.providers.aer.QasmSimulator.வகுப்பு: qiskit.providers.aer.StatevectorSimulator மற்றும்: வகுப்பு:` qiskit.providers.aer.UnitarySimulator` பின்தளத்தில்: வகுப்பு: qiskit.providers.aer.QasmSimulator இலிருந்து கேட்-ஃப்யூஷன் சர்க்யூட் தேர்வுமுறையை இயக்கவும்.
சிமுலேட்டர் முடிவுகளில் சராசரி ஸ்னாப்ஷாட் தரவின் செயல்திறனை மேம்படுத்தவும். இது விளைவுகளின் நிகழ்தகவு, பவுலி எதிர்பார்ப்பு மதிப்பு மற்றும் அடர்த்தி மேட்ரிக்ஸ் ஸ்னாப்ஷாட்கள் பின்வரும் நீட்டிப்புகளைப் பயன்படுத்தி:
: வகுப்பு: கிஸ்கிட். வழங்குநர்கள்.ஏயர். நீட்டிப்புகள். ஸ்னாப்ஷாட் எதிர்பார்ப்பு மதிப்பு
: வகுப்பு: கிஸ்கிட். வழங்குநர்கள்.ஏயர். நீட்டிப்புகள். ஸ்னாப்ஷாட் எதிர்பார்ப்பு மதிப்பு
: வகுப்பு: `qiskit.providers.aer.extensions.SnapshotDensityMatrix
நடவடிக்கை உருவாக்கு மற்றும் C++ மாட்ரிக்ஸ் வகுப்பின் நினைவு பயன்பாட்டை மேம்படுத்துவதற்கு மாட்ரிகளின் நகல்களை சிறிது செய்யவும்.
ஒருங்கிணைப்புச் செயல்திறன் செயற்பாடு.
` "matrix_product_state" ` தனிப்பயன் முறையை :class:` ~ qiskkit.देगा ஏற்றுமதி முறைக்கு சேர். எம். எம். எஸ். QasmSimulator ` எம். எம். எஸ். எம்.
தோராயமான இரண்டு முறைகள் உள்ளன. இருவரும் எஸ்.வி.டி வழிமுறையைப் பின்பற்றி மிகச்சிறிய ஷ்மிட் குணகங்களை நிராகரிக்கின்றனர். தோராயமான அளவைக் கட்டுப்படுத்தும் இரண்டு அளவுருக்கள் உள்ளன: `` "matrix_product_state_max_bond_dimension" `` (int): svd வழிமுறையின் முடிவில் தக்கவைக்கப்பட்ட ஷ்மிட் குணகங்களின் எண்ணிக்கையில் வரம்பை அமைக்கிறது. இந்த வரம்பைத் தாண்டிய குணகங்கள் நிராகரிக்கப்படும். (இயல்புநிலை: எதுவுமில்லை, அதாவது, பத்திர பரிமாணத்தில் வரம்பு இல்லை). `` "matrix_product_state_truncation_threshold" `` (இரட்டை): அவற்றின் சதுரங்களின் தொகை இந்த வாசலை விட சிறியதாக இருக்கும் மிகச்சிறிய குணகங்களை நிராகரிக்கவும். (இயல்புநிலை: 1e-16).
" Matrix_product_state ": வகுப்பு: `~ qiskit.providers.aer.QasmSimulator உருவகப்படுத்துதல் முறையைப் பயன்படுத்தும் போது அளவீட்டு மாதிரியின் செயல்திறனை மேம்படுத்தவும்.
` தாமதம், `` கட்டம்`` மற்றும் `` செட்ஃபேஸ்`` துடிப்பு வழிமுறைகளுக்கு ஆதரவைச் சேர்க்கவும்: வகுப்பு: `qiskit.providers.aer.PulseSimulator.RHS செயல்பாட்டிற்கான அழைப்புகளை கேச் செய்வதன் மூலம்: வகுப்பின் செயல்திறனை மேம்படுத்தவும்: qiskit.providers.aer.PulseSimulator
வகுப்பில் `` பின்தளத்தில்_ விருப்பங்கள்`` மூலம் குறிப்பிடக்கூடிய மாற்று DE தீர்க்கும் முறைகளை அறிமுகப்படுத்துங்கள்: qiskit.providers.aer.PulseSimulator.
வெப்பம் சிக்குறுத்தும் விளைவுகளைக் கொண்டு செயற்படும் வகுப்புகளைப் பயன்படுத்தி முடிவுகளின் விளைவுகளைக் கொண்டு இறுதியான விளைவுகளின் விளைவுகளைக் கொண்டு இறுதியாக நிகழ்கிறது.
Greatly செயல்திறன் பைபிண்ட் 11 மாற்றத்திற்கான செயல்திறனை மேம்படுத்துவதால் நுழைவுகளின் முடிவுகளைக் கொண்டு செல்லுபடியாகும், மற்றும் நகரும் வெக்டர் மற்றும் மாட்ரிக்ஸ் முடிவுகளால் Numpy arrays to Numpy arrays to Numpy arrays.
RNG இயந்திரத்தை 32-பிட் மெர்ஸ்விலிருந்து 64-பிட் மெர்ஸ்வின்ட் டிஸ்ரேட் இயந்திரத்தில் மாற்று.
வகுப்பு: qiskit.providers.aer.QasmSimulator மற்றும்: வகுப்பு:` qiskit.providers.aer.StatevectorSimulator` இன் " ஸ்டேட்வெக்டர் " உருவகப்படுத்துதல் முறையின் செயல்திறனை மேம்படுத்துகிறது அமை. AVX2 ஆதரவு தானாகவே கண்டறியப்பட்டு இயக்க நேரத்தில் இயக்கப்படும்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
` Conan தொகுப்பு மேலாளர் <https://conan.io/>` _. இந்த கருவி C++ மூல குறியீட்டால் தேவைப்படும் சார்புகளை கையாளும். இணைய இணைப்பு முதலாவது கட்டமைப்புக்கு தேவையிட இருக்கலாம் அல்லது சார்புகள் சேர்க்கப்பட்டோ அல்லது புதுப்பிக்கப்படும் போது, தேவையான தொகுப்புகளை இறக்குமதி செய்யவும்.
Qiskit-aer யின் நிலையான பதிப்பை கட்டும் போது நீங்கள் முதலில் கானன் நிறுவவேண்டும்:
pip install conan
சி ++ கன்ட்ரோலர் வகுப்புகளில் டிரான்ஸ்பிளேஷன் பாஸ்கள் எவ்வாறு கையாளப்படுகின்றன என்பதை மாற்றுகிறது, இதனால் ஒவ்வொரு பாஸையும் வெளிப்படையாக அழைக்க வேண்டும். ஒவ்வொரு பாஸையும் எப்போது அழைக்க வேண்டும், எந்த அளவுருக்களுடன் இது அதிக தனிப்பயனாக்கத்தை அனுமதிக்கிறது. குறிப்பாக இது QasmController உருவகப்படுத்துதல் முறையைப் பொறுத்து கேட் இணைவு தேர்வுமுறை பாஸுக்கு வெவ்வேறு அளவுருக்களை அமைக்க உதவுகிறது.
உள் குறியீட்டிற்கான அலகு மாற்றங்களைக் கையாள சாதன noise model செயல்பாட்டில் தனிப்பயன் `` gate_lengths`` என்பதைக் குறிப்பிடுவதற்கு `` gate_length_units`` குவார்க்கை இங்கு சேர்க்கவும்:meth: qiskit.providers.aer.noise.NoiseModel.from_device.
கட்டுப்படுத்தல்-Y ("cy") சேர் Stabilizer simulator முறைகளுக்கு வாய்ப்பு gateset ஆதரிக்கப்பட்டது.
ஏரின் பின்தளத்தில், டெர்ராவிலிருந்து உள்ளீட்டு qobj பொருள்களின் jsonschema சரிபார்ப்பு இப்போது இயல்புநிலையாக செயல்படுத்தப்படுவதற்கு பதிலாக தேர்வுசெய்யப்பட்டுள்ளது. Qobj இன் jsonschema சரிபார்ப்பை நீங்கள் இயக்க விரும்பினால், பின்தளத்தில் உள்ள பொருளின் ``validation'` க்கு ''True" குவார்க்கை அமைக்க :meth: qiskit.providers.aer.QasmSimualtor.run முறையை அமைக்கவும்.
சிமுலேட்டர்களால் ஆதரிக்கப்படும் அறிவுறுத்தல்கள், கேட்கள் மற்றும் ஸ்னாப்ஷாட்களை எளிதாக சரிபார்க்க அனுமதிக்க அடிப்படை சிமுலேட்டருக்கு ஸ்டேட் கிளாஸில் ஒரு ஒப்செட் பொருளைச் சேர்க்கிறது.
Refactor OpSet வகுப்பு. தலைப்பு கோப்பை பிரிக்க ஒப்செட்டை நகர்த்தி, `` std::set:: contains`` மற்றும் `` std::algorithm:: set_difference`` ஐ அடிப்படையாகக் கொண்ட `` contains`` மற்றும் `` difference`` முறைகளைச் சேர்க்கவும். இவை ஒப்செட்டிலிருந்து அகற்றப்பட்ட தவறான மற்றும் வழிமுறைகளை சரிபார்க்கின்றன, ஆனால் ஒழுங்கு தலைகீழாக மாற்றப்படுகிறது. இது மற்ற ஆப்சுகளின் பட்டியலை தற்போதைய ஆப்செட்டில் இல்லாததை விட மற்றொன்று இல்லை.
அளவீட்டு மாதிரி தேர்வுமுறை எவ்வாறு சரிபார்க்கப்படுகிறது என்பதை மேம்படுத்துகிறது. இந்த செயல்பாட்டின் விலையுயர்ந்த பகுதி இப்போது ஒரு முறை சுற்று கட்டுமானத்தின் போது செய்யப்படுகிறது, அங்கு நினைவக தேவைகள், உருவகப்படுத்துதல் முறை மற்றும் இறுதி செயலாக்கத்தை சரிபார்க்கும்போது உருவகப்படுத்துதலின் போது பல முறை அல்ல.
பிழை திருத்தங்கள்¶
தானாக தேர்ந்தெடுக்கப்பட்ட உருவகப்படுத்துதல் முறைகளிலிருந்து "நீட்டிக்கப்பட்ட_நிலையாக்கி" ஐ அகற்று. நீட்டிக்கப்பட்ட நிலைப்படுத்தி முறை துல்லியமாக இல்லாததால் இது தேவைப்படுகிறது மற்றும் அதன் உள்ளமைவு அளவுருக்களை எவ்வாறு மேம்படுத்துவது என்பது பயனருக்குத் தெரியாவிட்டால் சில சுற்றுகளுக்கு தவறான முடிவுகளைத் தரக்கூடும்.
தானியங்கி முறை இப்போது "நிலைப்படுத்தி", "அடர்த்தி_மாட்ரிக்ஸ்" மற்றும் "ஸ்டேட்வெக்டர்" முறைகளிலிருந்து மட்டுமே தேர்ந்தெடுக்கிறது. ஸ்டேட்வெக்டர் முறைக்கு மிகப் பெரியதாக இருக்கும் கிளிஃபோர்ட் அல்லாத சுற்று செயல்படுத்தப்பட்டால், அதற்கு பதிலாக "நீட்டிக்கப்பட்ட_நிலையாக்கி" அல்லது "மேட்ரிக்ஸ்_பிரடெக்ட்_ஸ்டேட்" முறைகளைப் பயன்படுத்தி வெளிப்படையாக முயற்சி செய்யலாம் என்று பரிந்துரைக்கும் விதிவிலக்கு எழுப்பப்படும்.
மேட்ரிக்ஸ் தயாரிப்பு நிலை உருவகப்படுத்துதல் முறைக்கான கேட் இணைவை முடக்குகிறது, ஏனெனில் இது சில சந்தர்ப்பங்களில் தவறான முடிவுகள் வழங்கப்படுவதில் சிக்கல்களை ஏற்படுத்துகிறது.
qiskit.providers.aer.PulseSimulator- ல் தவறான சேனல் மதிப்பீட்டை ஏற்படுத்தும் பிழையை சரிசெய்கிறது.வகுப்பில் ஹாமில்டோனிய பாகுபடுத்தும் விளிம்பு வழக்குகளுக்கு பல சிறிய பிழைகளை சரிசெய்கிறது
qiskit.providers.aer.pulse.system_models.hamiltonian_model.HamiltonianModelவகுப்பு.
Ignis 0.4.0¶
முன்னுரை¶
இந்த வெளியீட்டில் செய்யப்பட்ட முக்கிய மாற்றம், புதுப்பிக்கப்பட்ட கிளிஃபோர்ட் வகுப்பை ஒருங்கிணைக்க சீரற்ற தரப்படுத்தல் குறியீட்டின் மறுசீரமைப்பாகும்: வகுப்பு: கிஸ்கிட். டெர்ராவிலிருந்து குவாண்டம்_இன்ஃபோ.கிளிஃபோர்ட் மற்றும் சி.என்.ஓ.டி-டைஹெட்ரல் வகுப்பை மேம்படுத்த.
புதிய அம்சங்கள்¶
கிளிஃபோர்டு காட்சிகளைக் காட்டிலும் திறமையான ரேண்டமைஸ் பெஞ்ச்மார்க்கிங் (ஆர்.பி. 2 குவிட்ஸ். கூடுதலாக, சி.என்.ஓ.டி. 2-குவிட் குழு கூறுகள். : பியுன்க் : கிஸ்கிட். பற்றவைப்பு. சரிபார்ப்பு. சீரற்ற _ பெஞ்ச்மார்க்கிங்.ராண்டமைஸ்_பெஞ்ச்மார்க்கிங்_செக் செயல்பாட்டில் ஒரு புதிய குவார்க் உள்ளது` ரேண்ட் _ சீட் `, இது ஆர்பி சர்க்ய்ட் உருவாக்கப் பயன்படுத்தப்படும் சீரற்ற எண் ஜெனரேட்டருக்கு ஒரு விதையைக் குறிப்பிடப் பயன்படுகிறது. இனப்பெருக்கம் செய்யக்கூடிய சுற்றுக்கு இது பயனுள்ளதாக இருக்கும்.
The
qiskit.ignis.verification.qv_circuits()function has a new kwargseedwhich can be used to specify a seed for the random number generator used to generate the Quantum Volume circuits. This can be useful for having a reproducible circuit.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
qiskit.ignis.verification.randomized_benchmarking.randomized_benchmarking_seq()செயல்பாடு இப்போது புதுப்பிக்கப்பட்ட கிளிஃபோர்ட் வகுப்பைப் பயன்படுத்துகிறது:class:~ qiskit.quantum_info.Clifford மற்றும் புதுப்பிக்கப்பட்ட CNOT-Dihedral class:class: qiskit.ignis.veris. .randomized_benchmarking.CNOTDihedral அதன் வெளியீட்டை கட்டமைக்க கிளிஃபோர்ட் மற்றும் சி.என்.ஓ.டி-டைஹெட்ரல் குழு கூறுகளுக்கு முன் உருவாக்கிய குழு அட்டவணைகளைப் பயன்படுத்துவதற்குப் பதிலாக, ஊறுகாய் கோப்புகளில் சேமிக்கப்பட்டன. இது முந்தைய பதிப்பிலிருந்து வெளியீட்டிலிருந்து நுட்பமான வேறுபாடுகளை ஏற்படுத்தக்கூடும்.தேவைகள் பட்டியலில் ஒரு புதிய தேவை scikit-learn <https://scikit-learn.org/stable/> __ சேர்க்கப்பட்டுள்ளது. இந்த சார்பு 0.3.0 வெளியீட்டில் சேர்க்கப்பட்டது, ஆனால் அந்த வெளியீட்டில் ஒரு சார்புநிலையாக சரியாக வெளிப்படுத்தப்படவில்லை.:mod: qiskit.ignis.measurement.discriminator.iq_discriminators தொகுதி இறக்குமதி செய்யப்பட்டால் இது` இறக்குமதி பிழை``க்கு வழிவகுக்கும். இது இப்போது ஒரு சார்புநிலையாக சரியாக பட்டியலிடப்பட்டுள்ளது, இதனால் `ஸ்கிகிட்-லர்ன்` கிஸ்கிட்-இக்னிஸுடன் நிறுவப்படும்.
The
qiskit.ignis.verification.qv_circuits()function is now using the circuit library classQuantumVolumeto construct its output instead of building the circuit from scratch. This may result in subtle differences from the output from the previous version.வெளியீடு # 320 <https://github.com/Qiskit/qiskit-ignis/issues/320/> _ இல் கோரப்பட்டபடி டோமோகிராபி பொருத்திகள் இப்போது ஒரு முடிவு க்கு பதிலாக` முடிவு` பொருள்களின் பட்டியலையும் பெறலாம்.
தேய்மான குறிப்புகள்¶
The kwarg
interleaved_gatesfor theqiskit.ignis.verification.randomized_benchmarking.randomized_benchmarking_seq()function has been deprecated and will be removed in a future release. It is superseded byinterleaved_elem. The helper functionsqiskit.ignis.verification.randomized_benchmarking.BasicUtils,qiskit.ignis.verification.randomized_benchmarking.CliffordUtilsandqiskit.ignis.verification.randomized_benchmarking.DihedralUtilswere deprecated. These classes are superseded byqiskit.ignis.verification.randomized_benchmarking.RBgroupthat handles the group operations needed for RB. The classqiskit.ignis.verification.randomized_benchmarking.Cliffordis superseded byClifford.ஃபங்க்: qiskit.ignis.verification.qv_circuits செயல்பாட்டிற்கான குவாஜ்கள்` qr` மற்றும்` cr` ஆகியவை நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். இந்த குவார்க்குகள் ஒரு: வகுப்பு : qiskit.circuit.QuantumRegister மற்றும்: class:` qiskit.circuit.ClassicalRegister` ஐக் குறிப்பிடுவதற்குப் பயன்படுத்தப்படுவதாக ஆவணப்படுத்தப்பட்டுள்ளன. இருப்பினும், பரமீடேர்ஸ் உண்மையில் ஒருபோதும் மதிக்கப்படவில்லை மற்றும் ஒரு புதிய பதிவு எப்போதும் உருவாக்கப்படுமா என்பதைப் பொருட்படுத்தாமல் உருவாக்கப்படும்.
:func:` qiskit.ignis.verification.qv_circuits ` செயல்பாடு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். கடந்த காலத்தில் இது ஒரு சாதனத்தில் சர்குய்ட் இயக்க ஒரு பில்டபோர்ம்மை குறிப்பிட பயன்படுத்தப்பட்டது .வேறு வார்த்தைகளில் கூறுவதானால் ஒரு 5 குவிட் சாதனை கொண்டிருக்கும் என்றால், 1, 3, மற்றும் 4 என்று சாதனத்தின் ஒரு 2 குவிட் QV சுற்றுப்பாதை இயக்க விரும்பினால்.நீங்கள் கண்டிப்பாக பாஸ் செய்வது ` ` [1, 3, 4] ` உள்ள பட்டியல்களில் ஒன்றாக ` qubit_lists ` , இது 5 குவிட் மெய்நிகர் சுற்றுவட்டத்தை உருவாக்கும் மற்றும் அந்த மெய்நிகர் சுற்றுவட்டத்தில் 1, 3, மற்றும் 4 குவிட்டுகளுக்கு qv பயன்படுத்தப்படும்it. எனினும், இந்த செயல்திறன் தேவையிட்டது மற்றும் ` ` துவக்க அமைப்பு ` ` எனும் கருத்துக்களுடன் கூடுதலாக மற்றும் ஒரு சுற்றுச்சூழல் அமைப்பு அமைப்பை உடையது. முன் நகர்த்துவதற்கு பதிலாக :func: ~ qiskit.compiler.transpile ` or :func:` ~ qiskit.execute.execute ` இதைச் செய்ய ஆரம்ப லயூட் அமைக்கப்பட்டுள்ளது. எடுத்துக்காட்டாக, மேலே இயங்கும் உதாரணம்:
from qiskit import execute from qiskit.ignis.verification import qv_circuits initial_layout = [1, 3, 4] qv_circs, _ = qv_circuits([list(range3)]) execute(qv_circuits, initial_layout=initial_layout)
பிழை திருத்தங்கள்¶
பை செருகப்பட்ட அளவீட்டு பருப்புகளின் நிலையின் பிழையை சரிசெய்யவும்:func: qiskit.ignis.characterization.calibrations.pulse_schedules.drag_schedules. # 465 <https://github.com/Qiskit/qiskit-ignis/issues/465> __
அக்வா 0.7.5¶
புதிய அம்சங்கள்¶
ADMMOptimizer இல் CPLEX இல் மென்மையான சார்பாக நீக்கப்பட்டது. இப்போது பயன்படும் முன்னிருப்பு ஒப்பீட்டாளர்கள் KUBO பிரச்சினைகள் மற்றும் SlsqpOptimizer) ஒரு தொடர்ச்சியான ஒப்பீட்டாளராகப் பயன்படுத்தப்படுகிறது. நீங்கள் இன்னும் CplexOptimizer பயன்படுத்த ADMMOptimizer க்கு ஒரு ஒப்பிடுக்க முடியும், ஆனால் அது கண்டிப்பாக அமைக்க வேண்டும்.
புதிய யாஹூ! நிதி வழங்குபவர் உருவாக்கப்பட்டது.
அறிமுகப்படுத்தப்பட்டவர்களுக்கு `` குவாட்ராடிக் புரோகிராம் கன்வெர்ட்டர்`` அறிமுகப்படுத்தப்பட்டது. `` குறியாக்கம்`` / `` டிகோட்`` என்பதற்கு பதிலாக மாற்றிகள் மாற்றுவதற்கான `` மாற்ற`` / `` விளக்கம்`` முறைகள் சேர்க்கப்பட்டன. `` To_ising`` மற்றும் `` from_ising```` குவாட்ராடிக் புரோகிராம்`` வகுப்பில் சேர்க்கப்பட்டது. `` பெயர்`` தவிர அனைத்து அளவுருக்களையும் `` மாற்ற`` இலிருந்து கட்டமைப்பாளருக்கு நகர்த்தியது. மாற்றி அளவுருக்களுக்கு செட்டர் / கெட்டர் உருவாக்கப்பட்டது. `` லைனர் எக்வாலிட்டி டோபெனால்டி`` க்கு `` ஆட்டோ_டெஃபைன்_பெனால்டி`` மற்றும் `` விளக்கம்`` ஆகியவை சேர்க்கப்பட்டன. இப்போது மாற்றிகளின் பிழை செய்திகள் மிகவும் தகவலறிந்தவை.
ஒரு SLSQP ஒப்பீட்டாளர் ` ` க்கு qiskit.optimization.algorithms.SlsqpOptimizer ` ` தொடர்புடைய SciPy தேர்வுமுறை முறையின் போர்வையாக.. இது ஒரு சாதாரண கிளாசிக்கல் ஆப்டிமைசர் ஒப்பீட்டாளர், குவாண்டம் அல்கோரிதம் மற்றும் ` ` Cobylaoptimizer ` ` க்கான மாற்றம் செய்ய பயன்படும்.
Cobyla optimizer என்பது SLSQP ஒப்பீட்டளவில் அறிமுகப்படுத்தப்பட்ட ஒரு பல ஆரம்ப அம்சங்களைக் கொண்டு மாற்றப்பட்டுள்ளது. இயல்பாக, ஆப்டிமிஸ்ர் பல தொடக்க பயன்முறையில் இயங்காது.
SummedOpஎன்பது சமத்துவத்திற்கான கணித ரீதியாக மிகவும் சரியான சோதனை செய்கிறது, அங்குX + X == 2*Xமற்றும்X + Z == Z + Xபோன்ற வெளிப்பாடுகள் `True' என்று மதிப்பிடுகின்றன.
தேய்மான குறிப்புகள்¶
ஜி. எஸ். எல். எஸ் உகப்பாக்கி வகுப்பு `` மேக்சிட்டருக்கு` ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்சம்_அறிவு`` நீக்கப்பட்டது. எஸ். பி. எஸ். ஏ ஆப்டிமைசர் வகுப்பு `` மேக்சிட்டருக்கு` ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்ச_விவரங்கள்`` நீக்கப்பட்டது. உகந்ததாக்கு_விஎம் செயல்பாடு `` அதிகபட்சம்`` க்கு ஆதரவாக `` அதிகபட்சம்_விளக்குகள்`` அளவுரு நீக்கப்பட்டது. ADMMParameters வகுப்பு `` அதிகபட்சம்`` க்கு ஆதரவாக `` __init__`` அளவுரு `` அதிகபட்சம்_அறிவு`` நீக்கப்பட்டது.
ஐசிங் மாற்றும் வகுப்புகள்: வர்க்கம்: qiskit.optimization.converters.QuadraticProgramToIsing மற்றும்: class:` qiskit.optimization.converters.IsingToQuadraticProgram` நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக: வர்க்கம்: qiskit.optimization.QuadraticProgram முறைகள்: மெத்:` ~ qiskit.optimization.QuadraticProgram.to_ising` மற்றும்: meth: ~ qiskit.optimization.QuadraticPrgraom.from_ising அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
இதற்கான `` pprint_as_string`` முறை: வகுப்பு: qiskit.optimization.QuadraticProgram நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் வெளியீட்டில் `` .pprint_as_string () `` ஐ இயக்க வேண்டும்: மெத்: ~ qiskit.optimization.QuadraticProgram.to_docplex
இதற்கான
prettyprintமுறை:class: qiskit.optimization.QuadraticProgram நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் வெளியீட்டில்.prettyprint()ஐ இயக்க வேண்டும்:meth: ~ qiskit.optimization.QuadraticProgram.to_docplex
பிழை திருத்தங்கள்¶
பைதான் பதிப்பு 3.8 இல் மாற்றப்பட்டது: மேகோஸில், ஸ்பான் தொடக்க முறை இப்போது இயல்புநிலையாக உள்ளது. முட்கரண்டி தொடக்க முறை பாதுகாப்பற்றதாக கருதப்பட வேண்டும், ஏனெனில் இது துணை செயலாக்கங்களில் செயலிழக்க வழிவகுக்கும். இருப்பினும் P_BFGS ஸ்பானை ஆதரிக்கவில்லை, எனவே நாங்கள் ஒற்றை செயல்முறைக்கு திரும்புவோம். மேலும் விவரங்களுக்கு # 1109 <https://github.com/Qiskit/qiskit-aqua/issues/1109> ஐப் பார்க்கவும்.
CircuitStateFnஇல் உள்ள பிணைப்பு அளவுருக்கள் `` is_measurement`` இன் மதிப்பை நகலெடுக்கவில்லை, எப்போதும் `` is_measurement = False`` ஐ அமைக்கவும். இது சரி செய்யப்பட்டது.முன்னதாக, SummedOp.to_matrix_op மேட்ரிக்ஸ்ஆப்பின் (நம்பர் மெட்ரிக்ஸுடன்) ஒரு பட்டியலை உருவாக்கி, பின்னர் அவற்றைச் சுருக்கி, ஒரு மேட்ரிக்ஸ்ஆப்பைத் திருப்பித் தருகிறது. சில வழிமுறைகளுக்கு (எடுத்துக்காட்டாக vqe) ஆயிரக்கணக்கான மெட்ரிக்குகளைச் சேர்ப்பது தேவைப்படுகிறது, இது மெட்ரிக்ஸின் பட்டியலை உருவாக்கும்போது நினைவகத்தை வெளியேற்றும். இந்த மாற்றத்தால், எந்த பட்டியலும் கட்டப்படவில்லை. மாறாக, தொகையில் உள்ள ஒவ்வொரு செயல்பாடும் ஒரு மேட்ரிக்ஸாக மாற்றப்பட்டு, ஒரு குவிப்பானில் சேர்க்கப்பட்டு, நிராகரிக்கப்படுகிறது.
சர்க்யூட் சாம்ப்லர் பொருந்தாத மறுபயன்பாடு காரணமாக VQE இல் பின்தளத்தில் இருந்து ஸ்டேட்வெக்டரிலிருந்து qasm_simulator அல்லது உண்மையான சாதனத்திற்கு மாற்றுவது பிழையை ஏற்படுத்தியது. எப்போதும் ஒரு புதிய சர்க்யூட்ஸாம்ப்ளரை உருவாக்குவதற்கும் பயனரால் நுழையப்படாவிட்டால் புதிய எதிர்பார்ப்பை உருவாக்குவதற்கும் VQE மாற்றப்பட்டது. மேலும் விவரங்களுக்கு # 1153 <https://github.com/Qiskit/qiskit-aqua/issues/1153> ஐப் பார்க்கவும்.
குவாண்டல் தரவை சரியாகக் கையாள பரிவர்த்தனை மற்றும் விக்கிபீடியா நிதி வழங்குநர்கள் சரி செய்யப்பட்டனர். மேலும் விவரங்களுக்கு # 775 <https://github.com/Qiskit/qiskit-aqua/issues/775> ஐப் பார்க்கவும். நிதி வழங்குநர்களில் 0 பிழையால் வகுக்கப்படுவதை சரிசெய்கிறது திசையன் மற்றும் கோவாரன்ஸ் மேட்ரிக்ஸ் கணக்கீடுகள். மேலும் விவரங்களுக்கு # 781 <https://github.com/Qiskit/qiskit-aqua/issues/781> ஐப் பார்க்கவும்.
மற்றொரு ஆபரேட்டர் வகையாக மாற்றுவது, பயணித்தல், குறைத்தல் அல்லது பெருக்கல் போன்ற பல மாற்றங்களில் `` ListOp.combo_fn`` சொத்து இழந்துவிட்டது. இப்போது இந்த பண்பு விளைவாக ஆபரேட்டருக்கு பிரச்சாரம் செய்யப்படுகிறது.
சில ஆபரேட்டர் வெளிப்பாடுகளின் மதிப்பீடு, அதாவது
SummedOpமற்றும்CircuitSamplerஉடன் மதிப்பீடுகள் குணகங்களை சரியாக நடத்தவில்லை அல்லது அவற்றை முழுமையாக புறக்கணிக்கவில்லை. எ.கா. `` StateFn(0 * (I + Z)) @ Plus`` ஐ மதிப்பீடு செய்யவில்லை அல்லது `` ~StateFn(I) @ ((Plus + Minus) / sqrt(2))`` இயல்பாக்கம் தவறவிட்டதுsqrt(2)இன் காரணி. இது சரி செய்யப்பட்டது.OptimizationResultசில பொது அமைப்பாளர்களை உள்ளடக்கியது மற்றும் வகுப்பு மாறிகள்Optional. இந்த பிழைத்திருத்தம் அனைத்து வகுப்பு மாறிகளையும் படிக்க மட்டுமே செய்கிறது, இதனால் மைபி மற்றும் பைலிண்ட் வகைகளை மிகவும் திறம்பட சரிபார்க்க முடியும். `` MinimEEigenOptimizer.solve`` இதன் விளைவாகstrஎன உருவாக்கப்பட்ட பிட்ஸ்ட்ரிங்ஸ். இந்த பிழைத்திருத்தம் மற்ற வழிமுறைகளைப் போலவே முடிவைList [float] `` என மாற்றியது. `` Qiskit.optimization.algorithmsஇன் ஆவணத்தில் தேர்வுமுறை வழிமுறைகள் தொடர்பான சில பொது வகுப்புகள் இல்லை. இந்த பிழைத்திருத்தம் இதுபோன்ற அனைத்து வகுப்புகளையும் டாக்ஸ்ட்ரிங்கில் சேர்த்தது. மேலும் விவரங்களுக்கு # 1131 <https://github.com/Qiskit/qiskit-aqua/issues/1131>.OptimizationResult.__init__`` x`` மற்றும்variablesஆகியவற்றின் அளவுகள் பொருந்துமா இல்லையா என்பதைச் சரிபார்க்கவில்லை (அவை பொருந்த வேண்டும்). இந்த பிழைத்திருத்தம் பொருந்தவில்லை என்றால் பிழையை எழுப்ப காசோலையைச் சேர்த்தது மற்றும் காசோலை மூலம் கண்டறியப்பட்ட பிழைகளை சரிசெய்கிறது.test_convertersஇல்OptimizationResult.variable_namesமற்றும்OptimizationResult.variables_dictதொடர்பான காணாமல் போன யூனிட் சோதனைகளையும் இந்த பிழைத்திருத்தம் சேர்க்கிறது. மேலும் விவரங்களுக்கு # 1167 <https://github.com/Qiskit/qiskit-aqua/issues/1167>.OperatorStateFnஇல் அளவுரு பிணைப்பை சரிசெய்யவும், இது அடிப்படை பழமையான அளவுருக்களை பிணைக்கவில்லை, ஆனால் குணகங்களை மட்டுமே.op.eval(other) ``, ``opவகைOperatorBaseவகை, சில நேரங்களில் அமைதியாக `` op`` மற்றும்otherஆகியவற்றில் உள்ள குவிட்களின் எண்ணிக்கை இருக்கும்போது ஒரு முட்டாள்தனமான மதிப்பை அளிக்கிறது. சமமாக இல்லை. இந்த பிழைத்திருத்தம் சரியான நடத்தையில் விளைகிறது, இது ஒரு மதிப்பைத் திருப்புவதற்குப் பதிலாக பிழையை எறிவதாகும், ஏனெனில் இந்த வழக்கில் உள்ளீடு தவறானது.`` VQE`` இன்
construct_circuitமுறை முன்பு எதிர்பார்ப்பு மதிப்பை வகை `` OperatorBase`` என மதிப்பிட வேண்டும். இந்த செயல்பாடுconstruct_expectationக்கு நகர்த்தப்பட்டு,construct_circuitஎதிர்பார்ப்பு மதிப்பைக் கணக்கிட மதிப்பீடு செய்யப்பட்ட சுற்றுகளின் பட்டியலை வழங்குகிறது.
IBM Q வழங்கி 0. 8. 0¶
புதிய அம்சங்கள்¶
IBMQBackendnow has a newreservations()method that returns reservation information for the backend, with optional filtering. In addition, you can now useprovider.backends.my_reservations()to query for your own reservations.qiskit.providers.ibmq.job.IBMQJob.result()raises anIBMQJobFailureErrorexception if the job has failed. The exception message now contains the reason the job failed, if the entire job failed for a single reason."client_version" என்ற புதிய பண்புக்கூறு :'~qiskit.providers.ibmq.job.IBMQJob' மற்றும் :class:'qiskit.result.Result' object retrieved by :meth:'qiskit.providers.ibmq.job.IBMQJob.result'. "client_version" என்பது ஒரு அகராதி, அதாவது பெயர் மற்றும் மதிப்பு என்பது Qiskit போன்ற வேலையை சமர்ப்பிக்க பயன்படுத்தப்படும் கிளையன்ட்டின் பதிப்பு ஆகும்.
:func:'~qiskit.providers.ibmq.least_busy' செயல்பாடு இப்போது ஒரு புதிய, விருப்ப அளவுரு "reservation_lookahead" எடுக்கும். குறிப்பிடப்பட்டாலோ அல்லது இயல்புநிலையில் இருந்தாலோ, அடுத்த 'n' நிமிடங்களில் இட ஒதுக்கீடு இருந்தால், பின்முனை கிடைக்காது எனக் கருதப்படுகிறது, அங்கு "n" என்பது "reservation_lookahead" மதிப்பு. எடுத்துக்காட்டாக, 60 இன் முன்னிருப்பு மதிப்பு பயன்படுத்தப்பட்டால், அடுத்த 60 நிமிடங்களில் முன்பதிவுகளைக் கொண்ட எந்த பேக்எண்களும் கிடைக்கப்பெறாது எனக் கருதப்படும்.
:class:'~qiskit.providers.ibmq.managed.ManagedResults' now has a new :meth:'~qiskit.providers.ibmq.managed.ManagedResults.combine_results' method that combins results from all managed jobs and returns a single :class:'~qiskit.result.Result' object. இந்த "முடிவு" பொருளை உதாரணமாக , "கிஸ்கிட்-இக்னிசு" ஃபிட்டர் முறைகளில் பயன்படுத்தலாம்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
பின்வரும் புலங்களில் நேர முத்திரைகள் இப்போது UTC க்கு பதிலாக உள்ளூர் நேரத்தில் உள்ளன:
பின்நிலையில் பண்புகள் :meth:'qiskit.providers.ibmq.IBMQBackend.properties'.
பின்நிலையில் பண்புகள் :meth:'qiskit.providers.ibmq.job.IBMQJob.properties'ஆல் திருப்பி யளிக்கப்பட்டது.
` ` estimated_start_time ` ` and ` ` estimated_complete_time ` ` in :class:` ~ qiskit.preers.ibmq.job.QueueInfo , திரும்பிய :meth: qiskit. ' kiskit.job.IBMQJob.queue_info `.
"date" in :class:'~qiskit.result.Result', மூலம் திரும்பியது :meth:'qiskit.providers.ibmq.job.IBMQJob.result'.
கூடுதலாக, "datetime" அளவுரு ":meth:'qiskit.providers.ibmq.IBMQBackend.properties' க்கான "datetime" அளவுரு வும் UTC நேரமண்டல தகவலைக் கொண்டாலன்றி உள்ளூர் நேரத்தில் இருக்கும் என எதிர்பார்க்கப்படுகிறது.
"websockets" 8.0 அல்லது அதற்கு மேல் பைதான் 3.7 அல்லது அதற்கு மேல் பயன்படுத்தப்பட்டால் இப்போது தேவைப்படுகிறது. "websockets" 7.0 பைத்தான் 3.6 அல்லது அதற்கு கீழே தொடர்ந்து பயன்படுத்தப்படும்.
Windows இல், நிகழ்வு வளைய கொள்கை "WindowsSelectorEventLoopPolicy" க்கு முன்னிருப்பு "WindowsProactorEventLoopPolicy" ஐ பயன்படுத்துவதற்கு பதிலாக அமைக்கப்பட்டுள்ளது. இது ":meth:'qiskit.providers.ibmq.job.IBMQJob.result" முறை Windows இல் தொங்கலாம் என்ற சிக்கலை த் தீர்க்கிறது. '#691 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/691>' சரிசெய்கிறது_
தேய்மான குறிப்புகள்¶
IBM Quantum Experience credentials சேமிக்க ` ` Qconfig.py ` ` ஐ பயன்படுத்தவும் அடுத்த வெளியீட்டில் நீக்கப்படும். நீங்கள் ` ` qiskitrc ` ` (முன்னிருப்பு) பயன்படுத்த வேண்டும்.
பிழை திருத்தங்கள்¶
ஒரு சிக்கலைத் தீர்க்கிறது, அதில் ":meth:'qiskit.providers.ibmq.IBMQBackend.jobs" என்ற அழைப்பில், திரும்பும் வேலைகளின் எண்ணிக்கை பெரியதாக இருந்தால், தொங்கலாம். '#674 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/674>' சரிசெய்கிறது_
ஆஃப்லைனில் இருக்கும் பின்நிலைகளுக்கு ஜூபியர் இல் பிழை வரைபடங்களை உருவாக்கும் போது ஒரு "ValueError" ஐ எழுப்பும் ஒரு சிக்கலை சரிசெய்கிறது. '#706 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/706>' சரிசெய்கிறது_
qiskit.providers.ibmq.IBMQBackend.jobs()will now return the correct list ofIBMQJobobjects when thestatuskwarg is set to'RUNNING'.தொகுப்பு மெட்டாடேட்டா சரியாக "qiskit-terra" >= 0.14.0 சார்ந்திருப்பதை பிரதிபலிக்க புதுப்பிக்கப்பட்டுள்ளது. இந்த சார்பு 0.7.0 வெளியீட்டின் ஒரு பகுதியாக மறைமுகமாக சேர்க்கப்பட்டது, ஆனால் தொகுப்பு தேவைகளில் பிரதிபலிக்கவில்லை, எனவே இது முன்னர் மிகவும் பழைய "கிஸ்கிட்-டெர்ரா" பதிப்புடன் "qiskit-ibmq-provider" ஐ நிறுவமுடிந்தது. '#677 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/677>' சரிசெய்கிறது_
Qiskit 0. 19.6¶
டெரா 0.14.2¶
எந்த மாற்றமும் இல்லை
எ இ அர் 0.5.2¶
எந்த மாற்றமும் இல்லை
லிக்னிஸ் 0.3.3¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
தேவைகள் பட்டியலில் ஒரு புதிய தேவை scikit-learn <https://scikit-learn.org/stable/> __ சேர்க்கப்பட்டுள்ளது. இந்த சார்பு 0.3.0 வெளியீட்டில் சேர்க்கப்பட்டது, ஆனால் அந்த வெளியீட்டில் ஒரு சார்புநிலையாக சரியாக வெளிப்படுத்தப்படவில்லை.:mod: qiskit.ignis.measurement.discriminator.iq_discriminators தொகுதி இறக்குமதி செய்யப்பட்டால் இது` இறக்குமதி பிழை``க்கு வழிவகுக்கும். இது இப்போது ஒரு சார்புநிலையாக சரியாக பட்டியலிடப்பட்டுள்ளது, இதனால் `ஸ்கிகிட்-லர்ன்` கிஸ்கிட்-இக்னிஸுடன் நிறுவப்படும்.
பிழை திருத்தங்கள்¶
கிஸ்கிட்-தலிக்னிஸ் 0.3.2 இல் ஒரு சிக்கலை சரிசெய்கிறது, இது ஒரு
இம்போர்ட் ஏற்றோர் `` ஐ எழுப்புகிறது: mod: `qiskit.ignis.verification.tomography.fitters.process_fittercvxpy` நிறுவப்படாமல் இறக்குமதி செய்யப்பட்டது.
அக்வா 0.7.3¶
எந்த மாற்றமும் இல்லை
ஐபிஎம் கியூ வழங்குபவர் 0.7.2¶
எந்த மாற்றமும் இல்லை
கிஸ்கிட் 0.23.5¶
டெரா 0.14.2¶
எந்த மாற்றமும் இல்லை
எ இ அர் 0.5.2¶
எந்த மாற்றமும் இல்லை
லிக்னிஸ் 0.3.2¶
பிழை திருத்தங்கள்¶
The :meth:'qiskit.ignis.verification.TomographyFitter.fit' முறை முன்னிருப்பு ஃபிட்டர் க்கான கண்டறிதல் தர்க்கத்தை மேம்படுத்தியுள்ளது. இதற்கு முன்னர், 'cvxpy <https://www.cvxpy.org/>'__ நிறுவப்பட்ட போதெல்லாம் "cvx" ஃபிட்டர் முறை பயன்படுத்தப்பட்டது. எனினும், அது ஒரு SDP தீர்வு இல்லாமல் cvxpy நிறுவ முடியும் என்று "cvx" ஃபிட்டர் முறை வேலை என்று. இந்த தர்க்கம் மறுவேலை செய்யப்பட்டது, அதனால் "cvxpy" நிறுவப்பட்டால் மட்டுமே "cvx" ஃபிட்டர் முறை பயன்படுத்தப்படுகிறது மற்றும் ஒரு SDP தீர்வு பயன்படுத்த முடியும். இல்லையெனில், "lstsq" பொருத்துனர் பயன்படுத்தப்படுகிறது.
":meth:'qiskit.ignis.mitigation.measurement.fittters.MeasurementFitter.apply' இல் ஒரு விளிம்பில் வழக்கு சரிசெய்கிறது, இது அளவுத்திருத்த சுற்றுடன் பொருந்தாத தவறான அல்லது தவறான மாநில லேபல்களைக் கொண்டுள்ளது. முன்பு, இது பிழையாக இருக்காது மற்றும் வெறும் வெற்று முடிவை த் தரும். மாறாக இப்போது இந்த வழக்கு சரியாக பிடிக்கப்படுகிறது மற்றும் தவறான லேபல்களைப் பயன்படுத்தும் போது ஒரு "QiskitError" விதிவிலக்கு எழுப்பப்படுகிறது.
அக்வா 0.7.3¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
Svm வகைப்பாடு தேவைப்படுகிறது இது 'cvxpy <https://www.cvxpy.org/>'__ சார்பு தேவைகள் பட்டியலில் இருந்து நீக்கப்பட்டது மற்றும் ஒரு விருப்ப சார்பு செய்துள்ளது. ஏனெனில் Cvxpy ஐ நிறுவுவது ஒவ்வொரு சூழலிலும் தடையற்றதாக இல்லை, மேலும் பெரும்பாலும் ஒரு கம்பைலர் நிறுவப்பட வேண்டும். இப்போது svm classipier ஐ ப் பயன்படுத்த நீங்கள் cvxpy ஐ நிறுவ வேண்டும்,"pip install cvxpy<1.1.0" அல்லது அக்வா இயங்கும் "pip ஐ நிறுவ qiskit-aqua[cvx]".
பிழை திருத்தங்கள்¶
"QuantumCircuit.compose" ஐ ப் பயன்படுத்தும் "QuantumCircuit.combine" இன் "கம்போஸ்" முறை "QuantumCircuit.compose" ஐ பயன்படுத்த மாற்றப்பட்டுள்ளது. கம்பைன் பயன்படுத்துவது ஒரு ஆப்பரேட்டரை ஒரு பெயரிடப்பட்ட பதிவேட்டின் அடிப்படையில் ஒரு "CircuitOp" உடன் இணைப்பது ஆபரேட்டர்களை சங்கிலியால் பிணைக்கமுடியாது, ஆனால் அவற்றை அடுக்கும் சிக்கல் ஏற்படுகிறது. எ.கா. "Z ^ 2" ஐ 2-qbit என்ற பெயரில் உள்ள ஒரு சுற்றுடன் சேர்த்து, 2-qubit செயற்குறிக்கு பதிலாக 4-qubit செயற்குறியை தருகிறது.
MatrixOp.to_instructionமுறை முன்பு ஒரு ஆபரேட்டரைத் திருப்பி அளித்தது, அறிவுறுத்தலாக அல்ல. ஒரு வழிமுறையை வழங்க இந்த முறை புதுப்பிக்கப்பட்டுள்ளது. ஆபரேட்டர் பழமையானது ஒற்றுமையாக இருந்தால் மட்டுமே இது செயல்படும் என்பதை நினைவில் கொள்க, இல்லையெனில் அறிவுறுத்தலின் கட்டுமானத்தில் பிழை எழுப்பப்படுகிறது.`` __hash__`` வகுப்பின்
PauliOp`' '` முறை ``id()முறையைப் பயன்படுத்தியது, இது ஹாஷ் அட்டவணைகள் மற்றும் ஒரே மாதிரியான ஹாஷ்கள் இல்லாத ஒத்த பொருள்களை நம்பியிருப்பதால் செட் ஒப்பீடுகள் எதிர்பார்த்தபடி செயல்படத் தடுக்கிறது. இப்போது, அமலாக்கம்Pauliவகுப்பில் செயல்படுத்தலுடன் சரம் பிரதிநிதித்துவ இன்லைனின் ஹாஷைப் பயன்படுத்துகிறது.
ஐபிஎம் கியூ வழங்குபவர் 0.7.2¶
எந்த மாற்றமும் இல்லை
Qiskit 0. 19.4¶
டெரா 0.14.2¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
circuit_to_gate `` மற்றும் ``circuit_to_instruction `` மாற்றிகள் முன்பு தானாகவே உருவாக்கப்பட்ட கேட் அல்லது அறிவுறுத்தலை செயலில் உள்ள `` SessionEquivalenceLibraryஇல் சேர்த்துள்ளன. மாற்றப்பட்ட நிகழ்வுகள் எங்கே, எங்கு பதிவு செய்யப்பட வேண்டும் என்பதைக் குறிப்பிட இந்த மாற்றிகள் இப்போது விருப்பமான `` equivalence_library`` முக்கிய வாதத்தை ஏற்றுக்கொள்கின்றன. இயல்புநிலை நடத்தை மாற்றப்பட்ட நிகழ்வை பதிவு செய்யக்கூடாது.
பிழை திருத்தங்கள்¶
பல கட்டுப்பாட்டு எக்ஸ் கேட் ("MCXGrayCode", "MCXRecursive" மற்றும் "MCXVChain") செயல்படுத்தல்கள் அவற்றின் "பெயர்" பண்புகளை அவற்றின் செயல்படுத்தல் விவரிக்க இன்னும் துல்லியமாக விவரிக்க மாற்றப்பட்டது ("mcx_gray", "mcx_recursive", மற்றும் "mcx_vchain" முறையே.) முன்னதாக, இந்த வாயில்கள் "MCXGate" உடன் "MCX" என்ற பெயரைப் பகிர்ந்து கொண்டனர், இது இந்த கேட்கள் தவறாக டிரான்ஸ்பைல் செய்யப்பட்டு உருவகப்படுத்தப்பட்டன.
` ` ControlledGate ` ` instances with a set ` ` ctrl_state ` ` சில வழக்குகளிலும் சமமாக மதிப்பிடப்படவில்லை என்றும், ஒப்பிடுகையில் வாய்ப்புகள் சமமாக இருந்தன. இது தெரிவித்துள்ளது.
இதற்கான SI அலகு மாற்றம் சரி செய்யப்பட்டது: py: class: qiskit.pulse.SetFrequency.
SetFrequencyஅறிவுறுத்தல் முன்பக்கத்தில் ஹெர்ட்ஸில் இருக்க வேண்டும், மேலும்SetFrequencyஐPulseQobjInstructionஆக மாற்றும்போது ஜிஹெர்ட்ஸ் ஆக மாற்ற வேண்டும்.ஒரு வாயிலின் வரையறையை மாற்றுவதன் மூலம் திறந்த கட்டுப்பாடுகள் செயல்படுத்தப்பட்டன. இருப்பினும், கேட் ஏற்கனவே அடிப்படையில் இருக்கும்போது, இந்த வரையறை பயன்படுத்தப்படவில்லை, இது ஒரு பின்தளத்தில் அனுப்பப்பட்ட தவறான சுற்றுகளை அளிக்கிறது. திறந்த கட்டுப்பாடுகளுடன் கட்டுப்படுத்தப்பட்ட வாயிலை எதிர்கொண்டால், வரையறையை வெளியிடுவதற்கு இது அன்ரோலரை மாற்றியமைக்கிறது.
எ இ அர் 0.5.2¶
எந்த மாற்றமும் இல்லை
Ignis 0.3.0¶
எந்த மாற்றமும் இல்லை
Aqua 0. 7. 2¶
முன்னுரை¶
Aer qasm_ simulator யுடன் VQE எதிர்பார்ப்பு கணக்கீடு இப்போது எதிர்பார்க்கப்பட்ட சுழல் நடத்தை கணக்கிடும்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
'cvxpy <https://github.com/cvxgrp/cvxpy/>'_ இப்போது qiskit-அக்வா ஒரு சார்பு என தேவைகள் பட்டியலில் உள்ளது. இது quadratic program solver பயன்படுத்தப்படுகிறது, இது :class:'qiskit.aqua.algithms.QSVM' இன் ஒரு பகுதியாக பயன்படுத்தப்படுகிறது. முன்பு "cvxopt" இந்த செயல்பாட்டைபயன்படுத்த நிறுவப்பட வேண்டிய ஒரு விருப்பசார்பு ஆகும். இது இனி தேவையில்லை, ஏனெனில் CVXPY qiskit-aqua உடன் நிறுவப்படும்.
மாநில டோமோகிராஃபி ரன் :class:'qiskit.aqua.algoritms.HHL' ஒரு QASM பின்முனை யுடன் டோமோகிராபி ஃபிட்டர் செயல்பாடு :meth:'qiskit.ignis.verification.StateTomographyFitter.fit' இப்போது வெளிப்படையாக அழைக்கப்படுகிறது 'lstsq' அமைக்க ப்பட்டுள்ளது முறை எப்போதும் பொருந்தும் எப்போதும் பொருந்தும். இதற்கு முன்னர் ,"cvxpy" நிறுவப்பட்டால் அது "cvx" ஃபிட்டரை ப்பயன்படுத்த ுவதற்கு சந்தர்ப்பவாதமுயற்சிசெய்யும். ஆனால், "cvxpy" நிறுவப்பட்ட சூழலில் எப்போதும் இல்லாத ஒரு SDP solver நிறுவல் "cvxpy" உடன் "cvxpy" பொருத்துதல் குறிப்பாக கட்டமைக்கப்பட்ட "cvxpy" நிறுவலை சார்ந்துள்ளது.
Qiskit-aer இன் :class:'qiskit.providers.aer.extensions.SnapshotExpectationValue' instruction ஐ பயன்படுத்தி VQE எதிர்பார்க்கப்படுகிறது. இது குறிப்பிடத்தக்க வேகமாக இருப்பதால் இது 0.7.0 இல் இயல்புநிலையாக மாற்றப்பட்டது, ஆனால் அது ஷாட் சத்தம் இல்லாமல் எதிர்பாராத சிறந்த முடிவுகளுக்கு வழிவகுத்தது (மேலும் விவரங்களுக்கு '#1013 <https://github.com/Qiskit/qiskit-aqua/issues/1013>'ஐப் பார்க்கவும்). இயல்புநிலை இப்போது பயனர் எதிர்பார்ப்புகளை பொருத்த மீண்டும் மாறிவிட்டது. வேகமாக எதிர்பார்ப்பு க்வாட் பயன்படுத்தி இப்போது புதிய 'include_custom' kwarg அமைக்க ப்படுகிறது "உண்மை" :class:'qiskit.aqua.algoritms.VQE' constructor.
புதிய அம்சங்கள்¶
ஒரு புதிய kwarg "include_custom" constructor சேர்க்கப்பட்டுள்ளது :class:'qiskit.aqua.algiitthms.VQE' மற்றும் அது subclasses (முக்கியமாக :class:'qiskit.aqua.algoritms.QAOA'). "expectation" kwarg 'None' (இயல்புநிலை) க்கு அமைக்கப்படும் போது, இது ஏர் இன் "qasm_simulator" :class:'qiskit.providers.aer.extensions.SnapshotExtensionValue' instruction உடன் VQE எதிர்பார்ப்பு க்யூப்பயன்படுத்துதலை செயல்படுத்துகிறது. சிறப்பு ஏர் ஸ்னாப்ஷாட் அடிப்படையிலான கம்ப்யூட்டிங் மிகவும் வேகமாக ஆனால் மாநில வெக்டார் போலி ஒத்த சிறந்த வெளியீடு.
ஐபிஎம் கியூ வழங்குபவர் 0.7.2¶
எந்த மாற்றமும் இல்லை
Qiskit 0. 19.3¶
டெரா 0.14.1¶
எந்த மாற்றமும் இல்லை
எ இ அர் 0.5.2¶
பிழை திருத்தங்கள்¶
ஒரே ஒரு ஷாட் இயங்கும் பதிலாக CPU நூல்கள் எண்ணிக்கை சமமாக (இணை) காட்சிகளை பல இயங்கும் statevector மற்றும் ஒற்றை போலி கொண்டு நிலையான பிழை.
அடர்த்தி அணி Qasm சிமுலேட்டர் முறையில் தவறாக பயன்படுத்தப்படும் "சாய்வு" qobj வாயில் வழிமுறைகளை சரி.
டென்சிட்டி மேட்ரிஸ் சிமுலேஷன் முறையில் நிபந்தனை கேட்கள் சரியாக பயன்படுத்தப்படாத பிழைசரிசெய்கிறது.
"density_matrix_gpu" மற்றும் "density_matrix_thrust" QasmSimulator முறைகளுக்கு CZ கேட் மற்றும் Z கேட் இல் பிழை சரி செய்யவும்.
ஒரு அல்லாத தானியங்கி உருவகப்படுத்துதல் முறை பயன்படுத்தும் போது QasmSimulator மீது உருவகப்படுத்துதல் நினைவக தேவைகள் சரிபார்க்கப்படவில்லை எங்கே சிக்கல் சரி.
ஜி. பி. யு ஒப்புருவாக்கி முறைகளை ப்பாதிக்கும் நினைவக கசிவு நிர்ணயித்தல்
Ignis 0.3.0¶
எந்த மாற்றமும் இல்லை
அக்வா 0.7.1¶
எந்த மாற்றமும் இல்லை
ஐபிஎம் கியூ வழங்குபவர் 0.7.2¶
பிழை திருத்தங்கள்¶
meth:'qiskit.provider.ibmq.IBMQBackend.jobs' will now returns the correct list of :class:'~qiskit.provider.ibmq.job.IBMQJob' objects whn 'status' kwarg is set to ''RunnING''. '#523 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/523>' சரிசெய்கிறது_
தொகுப்பு மெட்டாடேட்டா சரியாக "qiskit-terra" >= 0.14.0 சார்ந்திருப்பதை பிரதிபலிக்க புதுப்பிக்கப்பட்டுள்ளது. இந்த சார்பு 0.7.0 வெளியீட்டின் ஒரு பகுதியாக மறைமுகமாக சேர்க்கப்பட்டது, ஆனால் தொகுப்பு தேவைகளில் பிரதிபலிக்கவில்லை, எனவே இது முன்னர் மிகவும் பழைய "கிஸ்கிட்-டெர்ரா" பதிப்புடன் "qiskit-ibmq-provider" ஐ நிறுவமுடிந்தது. '#677 <https://github.com/Qiskit/qiskit-ibmq-provider/issues/677>' சரிசெய்கிறது_
Qiskit 0. 19.0¶
டெரா 0.14.0¶
முன்னுரை¶
0.14.0 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழைத்திருத்தங்கள் உள்ளன. இந்த வெளியீட்டிற்கான மிகப்பெரிய மாற்றம் , வட்டி சில சுற்று குடும்பங்கள் கொண்ட ஒரு குவாண்டம் சுற்று நூலகம் அறிமுகம் உள்ளது :'qiskit.circuit.library'.
சர்கூட் லைப்ரரி பயனர்கள் நன்கு ஆய்வு செய்யப்பட்ட சுற்று குடும்பங்களின் பணக்கார தொகுப்புக்கு அணுகலை வழங்குகிறது, இதன் எடுத்துக்காட்டுகள், மிகவும் சிக்கலான சுற்றுகளை உருவாக்குவதில் கட்டிட த்தொகுதிகள், அல்லது கிளாசிக்கல் மீது குவாண்டம் கணக்கிடுதல் அனுகூலத்தை ஆராய ஒரு கருவியாக பயன்படுத்தப்படலாம். இந்த நூலகத்தின் உள்ளடக்கங்கள் தொடர்ந்து வளர்ந்து முதிர்ச்சியடையத் தொடங்கும்.
சர்க்யூட் லைப்ரரியின் ஆரம்ப வெளியீடு பின்வருமாறு:
'standard_gates': இவை பொதுவாக 1, 2, மற்றும் 3 க்யூபிட் கேட்கள் கொண்ட பழமையான கட்டிட தொகுதிகள் பயன்படுத்தப்படும் நிலையான-அகல வாயில்கள் உள்ளன. உதாரணமாக: class:'~qiskit.circuit.library.XGate', :class:'~qiskit.circuit.library.RZZGate' மற்றும் :class:'~qiskit.circuit.library.CSWAPGate'. இந்த கேட்களின் பழைய இடம் "qiskit.extensions.standard" கீழ் நீக்கப்படுகிறது.
''generalized_gates'': இவை பல குபிட்களை பொதுமைப்படுத்தக் கூடிய குடும்பங்கள், உதாரணமாக ஒரு :class:'~qiskit.circuit.library.Permutation' அல்லது :class:'~qiskit.circuit.library.GMS' (Global Molmer-Sorensen கேட்).
"boolean_logic": அடிப்படைகளை மாற்றும் சுற்றுகள் எளிய பூலியன் தர்க்க ச்சார்புகளின் படி கூறுகிறது, உதாரணமாக :class:'~qiskit.circuit.library.ADD' அல்லது :class:'~qiskit.circuit.library.XOR'.
"arithmetic": போன்ற :வர்க்கம்:'~qiskit.circuit.library.WeightedAdder' மற்றும் :class:'~qiskit.circuit.library.IntegerComparer' போன்ற கிளாசிக்கல் கணித செய்ய ஒரு சர்கூட் கள்.
'basis_changes': குவாண்டம் ஃூரியே உருமாற்றம், :class:'~qiskit.circuit.library.QFT', கணிதஅடிப்படையில் மாற்றங்களைப் பயன்படுத்துகிறது.
'n_local': ஒற்றை-qubit சுழற்சிகள் மற்றும் இரண்டு qubit வளையும் பயன்படுத்துகிறது இது போன்ற :'~qiskit.circuit.library.TwoLocal' போன்ற சுழற்சி மற்றும் சிக்கலுடனான பெரிய சுற்றுகளை எளிதாக உருவாக்க வடிவங்கள்.
"data_preparation": கிளாசிக்கல் உள்ளீட்டு த்தரவை எடுத்து உருவகப்படுத்தகடினமாக இருக்கும் குவாண்டம் நிலையில் குறியாக்கம் செய்யும் சுற்றுகள், எ.கா: class:'~qiskit.circuit.library.PauliFeatureMap' அல்லது :class:'~qiskit.circuid.library.ZZZFeatureMap'.
இலக்கியத்தில் சுவாரஸ்யமான துரதிர்ர்த்தாக நிரூபிக்கப்பட்டுள்ளது என்று மற்ற சர்கூட்கள், போன்ற :class:'~qiskit.circuit.library.QuantumVolume', :class:'~qiskit.circuit.library.GraphState', அல்லது :class:'~qiskit.circuid.library.IQP'.
இந்த சர்கூட்களை கட்டிடத் தொகுதிகளாக எளிதாகப் பயன்படுத்த அனுமதிக்க, நாம் ஒரு அறிமுகப்படுத்தப்பட்டுள்ளது :meth:'~qiskit.circuit.QuantumCircuit' முறை :class:'qiskit.circuit.QuantumCircuit' மற்ற சர்கூட்களை (முனைகளில் அவற்றை வெல்டிங் மற்றும் விருப்பமாக permuting கம்பிகள் மூலம்) அல்லது பிற எளிய கேட்கள்:
>>> lhs.compose(rhs, qubits=[3, 2], inplace=True)
┌───┐ ┌─────┐ ┌───┐
lqr_1_0: ───┤ H ├─── rqr_0: ──■──┤ Tdg ├ lqr_1_0: ───┤ H ├───────────────
├───┤ ┌─┴─┐└─────┘ ├───┤
lqr_1_1: ───┤ X ├─── rqr_1: ┤ X ├─────── lqr_1_1: ───┤ X ├───────────────
┌──┴───┴──┐ └───┘ ┌──┴───┴──┐┌───┐
lqr_1_2: ┤ U1(0.1) ├ + = lqr_1_2: ┤ U1(0.1) ├┤ X ├───────
└─────────┘ └─────────┘└─┬─┘┌─────┐
lqr_2_0: ─────■───── lqr_2_0: ─────■───────■──┤ Tdg ├
┌─┴─┐ ┌─┴─┐ └─────┘
lqr_2_1: ───┤ X ├─── lqr_2_1: ───┤ X ├───────────────
└───┘ └───┘
lcr_0: 0 ═══════════ lcr_0: 0 ═══════════════════════
lcr_1: 0 ═══════════ lcr_1: 0 ═══════════════════════
இதன் மூலம், Qiskit's சர்கூட்கள் இனி "math:'|0rangle" இன் உட்குறிப்பாக ஆரம்ப நிலையை எடுத்துக் கொள்வதில்லை, மேலும் இந்த ஆரம்ப நிலையுடன் வரையப்படாது. ஒரு சுற்று செயல்படுத்தப்படும்போது அனைத்து-பூஜ்ய ஆரம்ப நிலை இன்னும் ஒரு பின்நிலையில் கருதப்படுகிறது.
புதிய அம்சங்கள்¶
ஒரு புதிய முறை, :meth:'~qiskit.circuit.EquivalenceLibrary.has_entry', :class:'qiskit.circuit.EquivalenceLibrary' class சேர்க்கப்பட்டுள்ளது, ஒரு கொடுக்கப்பட்ட கேட் நூலகத்தில் அறியப்பட்ட சிதைவை உள்ளதா என்பதை விரைவாக சரிபார்க்க.
ஒரு புதிய வர்க்கம் :'~qiskit.circuit.library.IQP', ஒரு உடனடி குவாண்டம் பலகூறு சர்கூட் உருவாக்க, சுற்று நூலகம் தொகுதி சேர்க்கப்பட்டுள்ளது :mod:'qiskit.circuit.library'.
ஒரு புதிய :meth:'~qiskit.circuit.QuantumCircuit.compose' method has added to :class:'qiskit.circuit.QuantumCircuit'. இது ஒரு கேட் அல்லது அறிவுறுத்தல் ஒரு திரும்ப இல்லாமல் இரண்டு குவாண்டம் சர்கூட்கள் கலவை அனுமதிக்கிறது. இது தொகுப்பு புள்ளியில் qubits / clbits permutations அனுமதிக்கிறது, அதே போல் விருப்ப மாற்ற. இது :meth:'~qiskit.circuit.QuantumCircuit.append ()' என்ற இடத்தில் பயன்படுத்தப்படலாம், ஏனெனில் இது கட்டளைகள் மற்றும் ஆபரேட்டர்களை சர்கூட்டிலும் பயன்படுத்த அனுமதிக்கிறது.
:class:'qiskit.circuit.library.Diagonal' சர்க்யூட்சர்சர்கள் சர்க்யூட் நூலகத்தில் சேர்க்கப்பட்டுள்ளன. இந்த சுற்றுகள் மூலைவிட்ட குவாண்டம் ஆபரேட்டர்களை செயல்படுத்துகின்றன (மூலைவிட்டத்தில் மட்டும் பூஜ்ஜியம் அல்லாத உறுப்புகள் உள்ளன). அவர்கள் அடர்த்தியான matrices விட ஏயர் போலி மூலம் மிகவும் திறமையாக உருவகப்படுத்தப்பட்ட.
கூட்டு :meth:'~qiskit.quantum_info. Clifford.from_label' என்ற முறையை :class: qiskit.quantum_info. ஒற்றை-குபிட் I, X, Y, Z, H, அல்லது S வாயில்களின் டென்சர் பெருக்கல் என துவக்குவதற்கான Clifford வர்க்கம்.
அட்டவணை மின்மாற்றி :func:'qiskit.pulse.reschedule.compress_pulses' ஒற்றை துடிப்பு ஒரு துடிப்பு அட்டவணை யில் ஒரு துடிப்பு பல ஒத்த நிகழ்வுகளை மாற்றுவதன் மூலம் வன்பொருள் உள்ள அலைவடிவ நினைவகம் பயன்பாடு குறைக்க ஒரு தேர்வுமுறை பாஸ் செய்கிறது. உதாரணமாக:
from qiskit.pulse import reschedule schedules = [] for _ in range(2): schedule = Schedule() drive_channel = DriveChannel(0) schedule += Play(SamplePulse([0.0, 0.1]), drive_channel) schedule += Play(SamplePulse([0.0, 0.1]), drive_channel) schedules.append(schedule) compressed_schedules = reschedule.compress_pulses(schedules)
The
qiskit.transpiler.Layouthas a new methodreorder_bits()that is used to reorder a list of virtual qubits based on the layout object.சேனல்களுடன் தொடர்புகொள்வதற்கு இரண்டு புதிய முறைகள்:class: qiskit.providers.models.PulseBackendConfiguration இல் சேர்க்கப்பட்டுள்ளன.
get_channel_qubits()to get a list of all qubits operated by the given channel andget_qubit_channel()to get a list of channels operating on the given qubit.
புதியது:class: qiskit.extensions.HamiltonianGate மற்றும்:meth:` qiskit.circuit.QuantumCircuit.hamiltonian ()` முறைகள் அறிமுகப்படுத்தப்பட்டுள்ளன, இது பயனர் குறிப்பிட்ட ஹெர்மிடியன் ஆபரேட்டர் மற்றும் பரிணாம நேரம் மூலம் சுற்று அலைவடிவத்தின் ஹாமில்டோனிய பரிணாமத்தை குறிக்கிறது. பரிணாம நேரம் ஒரு: வர்க்கமாக இருக்கலாம் :class: ~ qiskit.circuit.Parameter,
timeஅளவுருக்கள் வழங்கப்பட்டால்` UnitaryGate` பொருள்களுடன் தொகுக்கும் அளவுருவாக்கப்பட்ட UCCSD அல்லது QAOA- பாணி சுற்றுகளை உருவாக்க அனுமதிக்கிறது. ஹாமில்டோனிய ஆபரேட்டர் `` எச்`` மற்றும் நேர அளவுருtஉடன் ஒருHamiltonianGateஇன் ஒற்றுமை \(e^{-iHt}\).சுற்று நூலக தொகுதி:mod: qiskit.circuit.library இப்போது ஒரு புதிய பூலியன் தர்க்கத்தையும் சுற்றுகளையும் வழங்குகிறது ,:class:` qiskit.circuit.library.AND`, மற்றும் OR சுற்று ,:class: qiskit.circuit.library. OR, இது வழங்கப்பட்ட வினாடிகளின் மாறுபட்ட எண்ணிக்கையில் அந்தந்த செயல்பாடுகளை செயல்படுத்துகிறது.
புதிய போலி பின்தளத்தில் சேர்க்கப்பட்டுள்ளது:mod: qiskit.test.mock. `` Ibmq_armonk``, `` ibmq_essex``, `` ibmq_london``, `` ibmq_valencia``, `` ibmq_cambridge``, `` ibmq_paris``, `` ibmq_rome`` ஆகியவற்றின் கேலி செய்யப்பட்ட பதிப்புகள் இதில் அடங்கும். ibmq_athens``. பிற போலி பின்தளத்தில் உள்ளதைப் போலவே, அளவீட்டுத் தரவின் ஸ்னாப்ஷாட்களும் (அதாவது ``
backend.defaults()) மற்றும் பிழை தரவு (அதாவது `` backend.properties () ``) உண்மையான அமைப்பிலிருந்து எடுக்கப்பட்டவை, மேலும் அவை பயன்படுத்தப்படலாம் உள்ளூர் சோதனை, தொகுப்பு மற்றும் உருவகப்படுத்துதல்.இதற்கான
last_update_dateஅளவுரு:class: ~ qiskit.providers.models.BackendProperties ஐ இப்போது``datetime`` பொருளாகவும் அனுப்பலாம். முன்னர் ISO8601 வடிவத்தில் ஒரு சரம் மட்டுமே ஏற்றுக்கொள்ளப்பட்டது.சேர்க்கிறது:meth: qiskit.quantum_info.Statevector.from_int மற்றும்:meth:` qiskit.quantum_info.DensityMatrix.from_int` முறைகள் குறிப்பிட்ட கணினி பரிமாணங்களுக்கு ஒரு கணக்கீட்டு அடிப்படை நிலையை உருவாக்க அனுமதிக்கின்றன.
வர்க்கங்களைச் சேர்ப்பதற்கான வகுப்புகள் :class: qiskit.circuit.QuantumCircuit வகுப்பில் உள்ள முறைகள் (எடுத்துக்காட்டாக:meth:` ~ qiskit.circuit.QuantumCircuit.h`) வர்க்க வரையறைக்கு முன்னர் இயங்கும் நேரத்தில் மாறும் வகையில் சேர்க்கப்பட்டன. வர்க்கத்தின் நிலையான வரையறுக்கப்பட்ட முறைகள். நிலையான பகுப்பாய்வி (ஐடிஇக்கள் போன்றவை) இப்போது இந்த முறைகளைப் படிக்க முடியும் என்பதே இதன் பொருள்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
Python-dateutil <https://pypi.org/project/python-dateutil/> _ என்ற புதிய தொகுப்பு இப்போது தேவைப்படுகிறது மற்றும் தேவைகள் பட்டியலில் சேர்க்கப்பட்டுள்ளது. வெளிப்புற வழங்குநர்களிடமிருந்து பெறப்பட்ட தேதிநேர சரங்களை அலசுவதற்கு இது பயன்படுத்தப்படுகிறது
qiskit.providers.models.BackendPropertiesபொருள்கள்.மார்ஷ்மெல்லோ ஸ்கீமா வகுப்புகள்:mod: qiskit.providers.models அவை இனி பின்தளத்தில் பொருள்கள் பயன்படுத்தாததால் அகற்றப்பட்டுள்ளன.
வகுப்புகளில் `` to_dict () `` முறையின் வெளியீடு :mod: qiskit.providers.models இனி நேரடி JSON சீரியலைசேஷனுக்கான வடிவமைப்பில் இல்லை. இந்த வகுப்பின் நிகழ்வுகளில் உள்ள உள்ளடக்கத்தைப் பொறுத்து, கட்டளைகளின் புலங்களில் எண்ணற்ற வரிசைகள் மற்றும் / அல்லது சிக்கலான எண்கள் இருக்கலாம். To_dict முறைகளின் வெளியீட்டை நீங்கள் JSON வரிசைப்படுத்துகிறீர்கள் என்றால், உங்கள் JSON குறியாக்கி எண்ணற்ற வரிசைகள் மற்றும் சிக்கலான எண்களைக் கையாள முடியும் என்பதை உறுதிப்படுத்த வேண்டும். இதில் பின்வருவன அடங்கும்:
:meth:'qiskit.providers.models.BackendProperties.to_dict'
:meth:` qiskit.preers.models.Uchannello.to_dict `
:meth:` qiskit.preers.models.PulseDefaults.to_dict `
:meth:` qiskit.preers.models.JobStatus.to_dict `
:meth:` qiskit.preers.models.Uchannello.to_dict `
:meth:` qiskit.preers.models.Uchannello.to_dict `
தேய்மான குறிப்புகள்¶
The
qiskit.dagcircuit.DAGCircuit.compose()method now takes a list of qubits/clbits that specify the positional order of bits to compose onto. The dictionary-based method of mapping using theedge_mapargument is deprecated and will be removed in a future release.The
combine_into_edge_map()method for theqiskit.transpiler.Layoutclass has been deprecated and will be removed in a future release. Instead, the new methodreorder_bits()should be used to reorder a list of virtual qubits according to the layout object.ஒரு:class: qiskit.pulse.ControlChannel பொருளை``channel`` அளவுரு வழியாக:class:` qiskit.providers.models.PulseBackendConfiguration` முறை :meth: qiskit.providers.models.PulseBackendConfiguration. கட்டுப்பாடு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும்.
ControlChannelபொருள்கள் இப்போது பின்தளத்தில் உள்ளமைவுchannelsபண்புக்கூறிலிருந்து உருவாக்கப்படுகின்றன, அவை எல்லா சேனல்களின் தகவல்களையும் அவை செயல்படும் வினாடிகளையும் கொண்டுள்ளது. இப்போது, முறை:meth: ~ qiskit.providers.models.PulseBackendConfiguration.control வடிவத்தின்qubitsஅளவுருவை(control_qubit, target_qubit)க்யூபிட்ஸ்எடுத்துlistஅல்லது தட்டச்சு செய்க. `` tuple``, மற்றும் கட்டுப்பாட்டு சேனல்களின் பட்டியலை வழங்குகிறது.வர்க்கத்தின் `` AND`` மற்றும் `` OR`` முறைகள் :class: qiskit.circuit.QuantumCircuit நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் சுற்று நூலக பூலியன் தர்க்க வகுப்புகளைப் பயன்படுத்த வேண்டும்:class: qiskit.circuit.library.AND amd :class:` qiskit.circuit.library.OR` பின்னர் அந்த பொருட்களை உங்கள் வகுப்பில் சேர்க்கவும். உதாரணத்திற்கு:
from qiskit import QuantumCircuit from qiskit.circuit.library import AND qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) qc_and = AND(2) qc.compose(qc_and, inplace=True)
Qiskit.extensions.standardதொகுதி நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அந்த தொகுதியில் உள்ள கேட் வகுப்புகள்:mod: qiskit.circuit.library.standard_gates க்கு நகர்த்தப்பட்டுள்ளன.
பிழை திருத்தங்கள்¶
The
qiskit.circuit.QuantumCircuitmethodsinverse(),mirror()methods, as well as theQuantumCircuit.datasetter would generate an invalid circuit when used on a parameterized circuit instance. This has been resolved and these methods should now work with a parameterized circuit. Fixes #4235முன்னதாக ஒரு நிலையான கிஸ்கிட் வாயிலின் கட்டுப்படுத்தப்பட்ட பதிப்பை உருவாக்கும் போது, ``ctrl_state`` ஒரு பொதுவான
ControlledGateபொருள் குறிப்பிடப்பட்டால், அது இல்லாமல் ஒரு நிலையான கிஸ்கிட் கட்டுப்படுத்தப்பட்ட கேட் திருப்பித் தரப்படும். இந்த பிஆர் நிலையான கிஸ்கிட் கட்டுப்படுத்தப்பட்ட வாயில்களை `` ctrl_state`` புரிந்துகொள்ள அனுமதிக்கிறது.கூடுதலாக, ஏற்கனவே கட்டுப்படுத்தப்பட்ட வாயிலின்
ctrl_stateஐ அமைப்பது ஒரு கட்டுப்பாட்டு பிழைகள் சேர்க்கப்படுவதற்கு பதிலாக முழு கட்டுப்பாட்டு அகலத்திற்கும் பயன்படுத்தப்படும் குறிப்பிட்ட நிலையை கருதுகிறது. உதாரணமாக,:circ = QuantumCircuit(2) circ.h(0) circ.x(1) gate = circ.to_gate() cgate = gate.control(1) c3gate = cgate.control(2, ctrl_state=0)
சேர்க்கப்படும் இரண்டு கட்டுப்பாட்டு வினாடிகளுக்கு பதிலாக மூன்று கட்டுப்பாட்டு வினாடிகளுக்கும் `` ctrl_state`` பொருந்தும்.
இதில் ஒரு பிழை சரி செய்யப்பட்டது:func: ~ qiskit.quantum_info.random_clifford இது முழு கிளிஃபோர்டு குழுவையும் மாதிரியாக்குவதைத் தடுத்தது. திருத்தங்கள் # 4271 <https://github.com/Qiskit/qiskit-terra/issues/4271> _
வர்க்கம்: qiskit.circuit.Instruction முறை: மெத்:` qiskit.circuit.Instruction.is_parameterized` முறை இதற்கு முன்னர் `` அறிவுறுத்தல்`` எந்தவொரு `` அறிவுறுத்தலுக்கும்` : வகுப்பு: கிஸ்கிட். சுற்று. அளவுரு` அதன் `` அளவுருக்கள்`` வரிசையின் எந்த உறுப்புகளிலும், அந்த `` அளவுரு`` முழுமையாக பிணைக்கப்பட்டிருந்தாலும் கூட. இது சரி செய்யப்பட்டுள்ளது, இதனால் அறிவுறுத்தல் முழுமையாக பிணைக்கப்படும்போது `` .is_parameterized`` `` தவறானது``
qiskit.circuit.ParameterExpression.subs()had not correctly detected some cases where substituting parameters would result in a two distinctParametersobjects in an expression with the same name. This has been corrected so aCircuitErrorwill be raised in these cases.வர்க்கத்தின்
__init__முறைகளை மேம்படுத்துவதன் மூலம் குறைந்த-குவிட் சர்க்யூட் சிமுலேஷன்களுக்கான:class: qiskit.quantum_info.Statevector மற்றும் :class:` qiskit.quantum_info.DensityMatrix` இன் செயல்திறனை மேம்படுத்தவும். திருத்தங்கள் # 4281 <https://github.com/Qiskit/qiskit-terra/issues/4281> _The function :func:` qiskit.compiler.transpile ` now correctly handles when the parameter ` basis_ gates ` s set ` . இது வெளியீட்டில் எந்த வாயிலையும் அனுமதிக்கும், வெளியீட்டுச் சுற்றுச்சூழல் (transpilation) நடைமுறையில் சேர்க்கப்பட்ட வாயுக்கள் சேர்க்கும். இந்த அளபுருக்களைப் பயன்படுத்தி ஒப்பிடுகையில் சில ஆதாரமான விளைவுகளைக் கொண்டிருக்கலாம் என்று குறிக்கவும். சில மின்சார கடவுச்சொல் ` ` basis_ வாயு ` ` அமைக்கிறது. உதாரணமாக, :class: qiskit.transpiler.passes.Optimize1qGates ` only optimizes the chains the chains of u1, u2, and u3 gates and without ` basis_gates ` ` it is unable to unroll gates that otherwise could be optimized:
from qiskit import * q = QuantumRegister(1, name='q') circuit = QuantumCircuit(q) circuit.h(q[0]) circuit.u1(0.1, q[0]) circuit.u2(0.1, 0.2, q[0]) circuit.h(q[0]) circuit.u3(0.1, 0.2, 0.3, q[0]) result = transpile(circuit, basis_gates=None, optimization_level=3) result.draw()
┌───┐┌─────────────┐┌───┐┌─────────────────┐ q_0: ┤ H ├┤ U2(0.1,0.3) ├┤ H ├┤ U3(0.1,0.2,0.3) ├ └───┘└─────────────┘└───┘└─────────────────┘திருத்தங்கள் # 3017 <https://github.com/Qiskit/qiskit-terra/issues/3017> _
பிற குறிப்புகள்¶
இதில் உள்ள பொருள்கள்:mod: qiskit.providers.models முன்பு மார்ஷ்மெல்லோ நூலகத்தைப் பயன்படுத்தி கட்டப்பட்டவை மார்ஷ்மெல்லோவைச் சார்ந்து இருக்காதபடி மறுசீரமைக்கப்பட்டுள்ளன. இதில் பின்வருவன அடங்கும்:
NduvGate
எந்தவொரு குறிப்பிடத்தக்க மாற்றமும் இல்லாமல் இவை டிராப்-இன் மாற்றாக இருக்க வேண்டும், ஆனால் மார்ஷ்மெல்லோவிலிருந்து பெறப்பட்ட பிரத்தியேகங்கள் செயல்படாது. ஏதேனும் பொருந்தாத தன்மைகளுக்கு சிக்கல்களைத் தாக்கல் செய்க.
Aer 0.5.1¶
எந்த மாற்றமும் இல்லை
Ignis 0.3.0¶
எந்த மாற்றமும் இல்லை
Aqua 0.7.0¶
முன்னுரை¶
Qiskit Aqua 0.7.0 வெளியீடு:class: qiskit.circuit.QuantumCircuit பொருள்களுடன் மேம்பட்ட ஒருங்கிணைப்புடன் நிறைய புதிய செயல்பாடுகளை அறிமுகப்படுத்துகிறது. மைய பங்களிப்புகள் கிஸ்கிட்டின் தேர்வுமுறை தொகுதி, ஆபரேட்டர்கள் மீதான முழுமையான மறுசீரமைப்பு, வழிமுறைகளுக்கான சொந்த உள்ளீடாக சுற்றுகளைப் பயன்படுத்துதல் மற்றும் அறிவிக்கும் JSON API ஐ நீக்குதல்.
உகப்பாக்கம் தொகுதி¶
The qiskit.optimization` module now offers functionality for modeling
and solving quadratic programs. It provides various near-term quantum and
conventional algorithms, such as the MinimumEigenOptimizer
(covering e.g. VQE or QAOA) or CplexOptimizer, as well as
a set of converters to translate between different
problem representations, such as QuadraticProgramToQubo.
See the
changelog
for a list of the added features.
ஆபரேட்டர் ஓட்டம்¶
இதில் வழங்கப்பட்ட ஆபரேட்டர் தர்க்கம்:mod: qiskit.aqua.operators` முற்றிலும் மறுசீரமைக்கப்பட்டு, இப்போது உடல்-உள்ளுணர்வு குவாண்டம் கணக்கீடுகளை உருவாக்குவதற்கான முழு கருவியாகும். இது மாநில செயல்பாடுகள், ஆபரேட்டர்கள் மற்றும் அளவீடுகளைக் கொண்டுள்ளது மற்றும் உள்நாட்டில் டெர்ராவின் ஆபரேட்டர் பொருள்களை நம்பியுள்ளது. கணினி எதிர்பார்ப்பு மதிப்புகள் மற்றும் பரிணாமங்கள் பெரிதும் எளிமைப்படுத்தப்பட்டன, மேலும் ExpectationFactory போன்ற பொருள்கள் ஆபரேட்டர் உள்ளீட்டு வகையின் அடிப்படையில் பொருத்தமான, மிகவும் திறமையான எதிர்பார்ப்பு வழிமுறையை உருவாக்குகின்றன. சேர்க்கப்பட்ட செயல்பாட்டின் மேலோட்டப் பார்வைக்கு changelog<https://github.com/Qiskit/qiskit-aqua/blob/master/CHANGELOG.md> _ ஐப் பார்க்கவும்.
இவரது சுற்றுகள்¶
வழிமுறைகள் பொதுவாக அளவுருவாக்கப்பட்ட சுற்றுகளை உள்ளீடாகப் பயன்படுத்துகின்றன, எடுத்துக்காட்டாக VQE, VQC அல்லது QSVM. முன்னதாக, இந்த உள்ளீடுகள் சுற்று பொருளை மடிக்கும் VariationalForm அல்லது `` FeatureMap``` வகையாக இருக்க வேண்டும். இப்போது இந்த வழிமுறைகளில் சுற்றுகள் இயல்பாக ஆதரிக்கப்படுகின்றன, அதாவது தனித்தனியாக கட்டப்பட்ட QuantumCircuit இந்த வழிமுறைகளுக்கு அனுப்பப்படலாம். சுற்று குடும்பங்களின் பரந்த தொகுப்பை வழங்கும் சுற்று நூலகத்தின் வெளியீட்டோடு இணைந்து, விரிவான சுற்றுகளை அல்காரிதம் உள்ளீடாக உருவாக்குவது இப்போது எளிதானது.
அறிவிப்பு JSON API¶
அகராதிகளை அளவுருக்களாகப் பயன்படுத்துவதோடு, அக்வா இடைமுகங்கள் GUI ஐப் பயன்படுத்துவதற்கான வழிமுறைகளும் அகற்றப்பட்டுள்ளன.
IBM Q Provider 0.7.0¶
புதிய அம்சங்கள்¶
ஒரு புதிய விதிவிலக்கு ,:class: qiskit.providers.ibmq.IBMQBackendJobLimitError, இப்போது ஒரு வேலையைச் சமர்ப்பிக்க முடியாவிட்டால் எழுப்பப்படுகிறது, ஏனெனில் செயலில் உள்ள வேலைகளுக்கான வரம்பு எட்டப்பட்டுள்ளது.
qiskit.providers.ibmq.job.IBMQJobandqiskit.providers.ibmq.managed.ManagedJobSeteach has two new methodsupdate_nameandupdate_tags. They are used to change the name and tags of a job or a job set, respectively.செயல்பாடு: func: qiskit.compiler.transpile இப்போது` அடிப்படை_கேட்ஸ்` அளவுரு` எதுவுமில்லை` என அமைக்கப்பட்டால் சரியாகக் கையாளப்படுகிறது. இது டிரான்ஸ்பைலேஷன் செயல்முறையால் சேர்க்கப்பட்ட வாயில்கள் உட்பட, வெளியீடு அமைக்கப்பட்ட சுற்றில் எந்த வாயிலையும் அனுமதிக்கும். இந்த அளவுருவைப் பயன்படுத்துவது தேர்வுமுறை போது சில எதிர்பாராத விளைவுகளை ஏற்படுத்தக்கூடும் என்பதை நினைவில் கொள்க. சில டிரான்ஸ்பைலர் பாஸ்கள் `` அடிப்படை_கேட்ஸ்`` தொகுப்பைப் பொறுத்து இருக்கும். எ.கா.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
The
qiskit.providers.ibmq.job.IBMQJobmethodscreation_dateandtime_per_stepnow return date time information as adatetimeobject in local time instead of UTC. Similarly, the parametersstart_datetimeandend_datetime, ofqiskit.providers.ibmq.IBMQBackendService.jobs()andqiskit.providers.ibmq.IBMQBackend.jobs()can now be specified in local time.The
qiskit.providers.ibmq.job.QueueInfo.format()method now uses a customdatetimeto string formatter, and the package arrow is no longer required and has been removed from the requirements list.
தேய்மான குறிப்புகள்¶
The
from_dict()andto_dict()methods ofqiskit.providers.ibmq.job.IBMQJobare deprecated and will be removed in the next release.
பிழை திருத்தங்கள்¶
த்ரெட்டிங் காரணமாக அசின்சியோ லூப் இல்லாவிட்டால் ``nest_asyncio.apply () `` விதிவிலக்கு எழுப்பக்கூடிய ஒரு சிக்கல் சரி செய்யப்பட்டது.
Qiskit 0.18.3¶
Terra 0.13.0¶
எந்த மாற்றமும் இல்லை
Aer 0.5.1¶
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
சி ++ கன்ட்ரோலர் வகுப்புகளில் டிரான்ஸ்பிளேஷன் பாஸ்கள் எவ்வாறு கையாளப்படுகின்றன என்பதை மாற்றுகிறது, இதனால் ஒவ்வொரு பாஸையும் வெளிப்படையாக அழைக்க வேண்டும். ஒவ்வொரு பாஸையும் எப்போது அழைக்க வேண்டும், எந்த அளவுருக்களுடன் இது அதிக தனிப்பயனாக்கத்தை அனுமதிக்கிறது. குறிப்பாக இது QasmController உருவகப்படுத்துதல் முறையைப் பொறுத்து கேட் இணைவு தேர்வுமுறை பாஸுக்கு வெவ்வேறு அளவுருக்களை அமைக்க உதவுகிறது.
உள் குறியீட்டிற்கான அலகு மாற்றங்களைக் கையாள சாதன noise model செயல்பாட்டில் தனிப்பயன் `` gate_lengths`` என்பதைக் குறிப்பிடுவதற்கு `` gate_length_units`` குவார்க்கை இங்கு சேர்க்கவும்:meth: qiskit.providers.aer.noise.NoiseModel.from_device.
கட்டுப்படுத்தல்-Y ("cy") சேர் Stabilizer simulator முறைகளுக்கு வாய்ப்பு gateset ஆதரிக்கப்பட்டது.
ஏரின் பின்தளத்தில், டெர்ராவிலிருந்து உள்ளீட்டு qobj பொருள்களின் jsonschema சரிபார்ப்பு இப்போது இயல்புநிலையாக செயல்படுத்தப்படுவதற்கு பதிலாக தேர்வுசெய்யப்பட்டுள்ளது. Qobj இன் jsonschema சரிபார்ப்பை நீங்கள் இயக்க விரும்பினால், பின்தளத்தில் உள்ள பொருளின் ``validation'` க்கு ''True" குவார்க்கை அமைக்க :meth: qiskit.providers.aer.QasmSimualtor.run முறையை அமைக்கவும்.
பிழை திருத்தங்கள்¶
தானாக தேர்ந்தெடுக்கப்பட்ட உருவகப்படுத்துதல் முறைகளிலிருந்து "நீட்டிக்கப்பட்ட_நிலையாக்கி" ஐ அகற்று. நீட்டிக்கப்பட்ட நிலைப்படுத்தி முறை துல்லியமாக இல்லாததால் இது தேவைப்படுகிறது மற்றும் அதன் உள்ளமைவு அளவுருக்களை எவ்வாறு மேம்படுத்துவது என்பது பயனருக்குத் தெரியாவிட்டால் சில சுற்றுகளுக்கு தவறான முடிவுகளைத் தரக்கூடும்.
தானியங்கி முறை இப்போது "நிலைப்படுத்தி", "அடர்த்தி_மாட்ரிக்ஸ்" மற்றும் "ஸ்டேட்வெக்டர்" முறைகளிலிருந்து மட்டுமே தேர்ந்தெடுக்கிறது. ஸ்டேட்வெக்டர் முறைக்கு மிகப் பெரியதாக இருக்கும் கிளிஃபோர்ட் அல்லாத சுற்று செயல்படுத்தப்பட்டால், அதற்கு பதிலாக "நீட்டிக்கப்பட்ட_நிலையாக்கி" அல்லது "மேட்ரிக்ஸ்_பிரடெக்ட்_ஸ்டேட்" முறைகளைப் பயன்படுத்தி வெளிப்படையாக முயற்சி செய்யலாம் என்று பரிந்துரைக்கும் விதிவிலக்கு எழுப்பப்படும்.
கட்டுப்பாட்டு வகுப்புகளை சரிசெய்கிறது, இதனால் ReduseBarrier transpilation pass முதலில் பயன்படுத்தப்படும். இது வரையறுக்கப்பட்ட வழிமுறைகள் பயன்படுத்தப்படாத குயிட்களைக் குறைப்பதைத் தடுப்பதைத் தடுக்கிறது.
மேட்ரிக்ஸ் தயாரிப்பு நிலை உருவகப்படுத்துதல் முறைக்கான கேட் இணைவை முடக்குகிறது, ஏனெனில் இது சில சந்தர்ப்பங்களில் தவறான முடிவுகள் வழங்கப்படுவதில் சிக்கல்களை ஏற்படுத்துகிறது.
வெப்ப தளர்வு பிழைகள் மற்றும் கேட் பிழைகள் கொண்ட சாதன இரைச்சல் மாதிரிக்கான கேட் டைம் யூனிட் மாற்றத்தில் பிழையை சரிசெய்யவும். பிழை நிகழ்தகவு டிப்போலரைசிங் பிழை மைக்ரோ விநாடிகளில் கேட் நேரத்துடன் கணக்கிடப்படுகிறது, அதே நேரத்தில் வெப்ப தளர்வுக்காக நானோ விநாடிகளில் கணக்கிடப்படுகிறது. தவறான அலகுகள் சாதனம் ஒத்திசைவு மட்டுப்படுத்தப்பட்டதாகத் தோன்றும் என்பதால் இது டிப்போலரைசிங் பிழையைப் பயன்படுத்தவில்லை.
இயற்றப்பட்ட வழிமுறைகளின் வினாக்கள் வேறுபடும்போது குவாண்டம் எர்ரர்களின் தவறான கலவையில் பிழையை சரிசெய்யவும்.
"Diagonal" வாயில் மிக அதிகமான சகிப்புத்தன்மையுடன் ஒற்றுமையாக இருக்கிறதா என்று சோதிக்கப்படும் சிக்கலை சரிசெய்யவும். இது நம்பி செயல்பாடுகளிலிருந்து உருவாக்கப்படும் மூலைவிட்டங்கள் பெரும்பாலும் சோதனையில் தோல்வியடையும்.
குவிட் ட்ரூசேஷனுக்கு முன் பயன்படுத்த வேண்டிய நீக்கு-தடை சுற்று உகப்பாக்கம் பாஸை சரிசெய்யவும். இது ஒரு சிக்கலை சரிசெய்கிறது, அங்கு டெர்ரா டிரான்ஸ்பைலரால் செருகப்பட்ட தடைகள் இல்லையெனில் செயலற்ற குவிட்கள் குறைக்கப்படுகின்றன.
Ignis 0.3.0¶
எந்த மாற்றமும் இல்லை
Aqua 0.6.6¶
எந்த மாற்றமும் இல்லை
IBM Q Provider 0.6.1¶
எந்த மாற்றமும் இல்லை
Qiskit 0.18.0¶
Terra 0.13.0¶
முன்னுரை¶
0.13.0 வெளியீட்டில் பல பெரிய மாற்றங்கள் உள்ளன. இந்த வெளியீட்டிற்கான சில சிறப்பம்சங்கள்:
டிரான்ஸ்பைலரைப் பொறுத்தவரை:class: qiskit.dagcircuit.DAGCircuit வகுப்பை உருவாக்க பயன்படும் வரைபட நூலகத்தை நாங்கள் மாற்றியுள்ளோம், இது` retworkx <https://pypi.org/project/retworkx/>`_ பெரிதும் மேம்படுத்தப்பட்ட செயல்திறனுக்காக. 0.13.0 வெளியீட்டில் சுற்று பரிமாற்ற வேகம் முந்தைய வெளியீடுகளை விட வேகமாக இருக்க வேண்டும்.
துடிப்பு அறிவுறுத்தல்கள் கட்டமைக்கப்பட்ட பாணியில் குறிப்பிடத்தக்க எளிமைப்படுத்தல் செய்யப்பட்டுள்ளது. இப்போது, ``Command `` கள் நீக்கப்பட்டன மற்றும் ஒரு ஒருங்கிணைந்த தொகுப்பு:class: ~ qiskit.pulse.instructions.Instruction கள் ஆதரிக்கப்படுகின்றன.
The qiskit.quantum_info module includes several new functions
for generating random operators (such as Cliffords and quantum channels)
and for computing the diamond norm of quantum channels; upgrades to the
Statevector and
DensityMatrix classes to support
computing measurement probabilities and sampling measurements; and several
new classes are based on the symplectic representation
of Pauli matrices. These new classes include Clifford operators
(Clifford), N-qubit matrices that are
sparse in the Pauli basis (SparsePauliOp),
lists of Pauli's (PauliTable),
and lists of stabilizers (StabilizerTable).
இந்த வெளியீட்டில் கிஸ்கிட் முழுவதும் மேம்பட்ட ஆவணங்கள் உள்ளன, இதில்:mod: qiskit.circuit ,:mod:` qiskit.pulse` மற்றும்:mod: qiskit.quantum_info தொகுதிகளுக்கான மேம்பட்ட ஆவணங்கள் அடங்கும்.
கூடுதலாக, கேட் பொருள்களின் பெயரிடுதல் மற்றும்:class: ~ qiskit.circuit.QuantumCircuit முறைகள் மிகவும் சீரானதாக புதுப்பிக்கப்பட்டுள்ளன. விஷயங்கள் பல நிலையான பெயரிடும் திட்டத்திற்கு நகரும்போது பல வகுப்புகள் மற்றும் முறைகள் நீக்கப்பட்டன.
இந்த வெளியீட்டில் செய்யப்பட்ட அனைத்து மாற்றங்கள் பற்றிய முழு விவரங்களுக்கு கீழே உள்ள விரிவான வெளியீட்டுக் குறிப்புகளைக் காண்க.
புதிய அம்சங்கள்¶
புதிய சுற்று நூலக தொகுதி சேர்க்கப்பட்டது:mod: qiskit.circuit.library. பொதுவாக பயன்படுத்தப்படும் சுற்றுகளின் கட்டமைப்பாளர்களுக்கு இது ஒரு இடமாக இருக்கும், அவை பெரிய சுற்றுகள் அல்லது பயன்பாடுகளுக்கான கட்டுமானத் தொகுதிகளாகப் பயன்படுத்தப்படலாம்.
The
qiskit.providers.BaseJobclass has four new methods:கொடுக்கப்பட்ட வேலை நிலையில் ஒரு வேலை இருக்கிறதா என்பதை சரிபார்க்க இந்த முறைகள் பயன்படுத்தப்படுகின்றன.
தரையில் இருக்கும் ஒரு குவிட்டில் கட்டுப்படுத்தப்பட்ட கட்டுப்பாட்டைக் குறிப்பிடும் திறனைச் சேர்க்கவும். கட்டுப்பாட்டு வினாடிகளின் நிலை ஒரு முழு எண்ணால் குறிக்கப்படுகிறது. உதாரணத்திற்கு:
from qiskit import QuantumCircuit from qiskit.extensions.standard import XGate qc = QuantumCircuit(4) cgate = XGate().control(3, ctrl_state=6) qc.append(cgate, [0, 1, 2, 3])
நான்கு குவிட் கேட்டை உருவாக்குகிறது, அங்கு முதல் குவிட் தரை நிலையில் இருந்தால், இரண்டாவது மற்றும் மூன்றாவது குவிட்கள் உற்சாகமான நிலையில் இருந்தால் நான்காவது குவிட் புரட்டப்படும். `` Ctrl_state`` என்பது `` None`` என்றால், இயல்புநிலை, கட்டுப்பாடு உற்சாகமாக இருக்கும் அனைத்து கட்டுப்பாட்டு வினாடிகளிலும் நிபந்தனை விதிக்கப்படுகிறது.
%circuit_library_infoஎன்ற புதிய ஜூபிட்டர் விட்ஜெட் இதில் சேர்க்கப்பட்டுள்ளது:mod: qiskit.tools.jupyter. சுற்று நூலகத்திலிருந்து கட்டப்பட்ட சுற்றுகள் பற்றிய விவரங்களைக் காட்சிப்படுத்த இந்த விட்ஜெட் பயன்படுத்தப்படுகிறது. உதாரணத்திற்குfrom qiskit.circuit.library import XOR import qiskit.tools.jupyter circuit = XOR(5, seed=42) %circuit_library_info circuit
ஒரு புதிய குவார்க் விருப்பம்,
formatted, இதில் சேர்க்கப்பட்டுள்ளது:meth: qiskit.circuit.QuantumCircuit.qasm.Trueஎன அமைக்கப்பட்டால், இந்த முறை ஒரு தொடரியல் சிறப்பம்சமாக பதிப்பை (நிறமிகளைப் பயன்படுத்தி) அச்சிட்டு,None(QASM குறியீட்டை ஒரு சரமாகத் திருப்புவதற்கான சாதாரண நடத்தையிலிருந்து வேறுபடுகிறது).ஒரு புதிய குவார்க் விருப்பம்,
filename, இதில் சேர்க்கப்பட்டுள்ளது:meth: qiskit.circuit.QuantumCircuit.qasm. ஒரு பாதைக்கு அமைக்கப்பட்டால், அந்த கோப்பில் QASM குறியீட்டை முறை எழுதும். பின்னர் அது இயல்பான வெளியீட்டைத் தொடரும்.ஒரு புதிய அறிவுறுத்தல் :py:class: ~ qiskit.pulse.SetFrequency இது பயனர்களின்: வகுப்பின் அதிர்வெண்ணை மாற்ற அனுமதிக்கிறது:~ qiskit.pulse.PulseChannel. இது பின்வரும் வழியில் செய்யப்படுகிறது
from qiskit.pulse import Schedule from qiskit.pulse import SetFrequency sched = pulse.Schedule() sched += SetFrequency(5.5e9, DriveChannel(0))
N இந்த எடுத்துக்காட்டுக்கு, `` SetFrequency`` கட்டளைக்கு முந்தைய அனைத்து பருப்புகளின் அதிர்வெண் இயல்புநிலை அதிர்வெண்ணாக இருக்கும், மேலும் `` SetFrequency`` கட்டளைக்குப் பிறகு சேனல் பூஜ்ஜியத்தை இயக்க பயன்படுத்தப்படும் அனைத்து பருப்புகளும் 5.5 GHz ஆக இருக்கும். `` SetFrequency`` இன் பயனர்கள் எந்தவொரு வன்பொருள் வரம்புகளையும் மனதில் கொள்ள வேண்டும்.
ஒரு புதிய முறை ,:meth: ~ qiskit.circuit.QuantumCircuit.assign_parameters: வகுப்பில் சேர்க்கப்பட்டுள்ளது :class:` qiskit.circuit.QuantumCircuit` வகுப்பில். இந்த முறை ஒற்றை அகராதியில் மிதவைகள் மற்றும் அளவுருக்கள் ஆகிய இரண்டையும் கொண்ட அளவுரு அகராதியை ஏற்றுக்கொள்கிறது. வேறு வார்த்தைகளில் கூறுவதானால், இந்த புதிய முறை மிதவைகள், அளவுருக்கள் அல்லது இரண்டையும் ஒரே அகராதியில் பிணைக்க உங்களை அனுமதிக்கிறது.
மேலும்,
inplaceகுவார்க்கைப் பயன்படுத்துவதன் மூலம் அதைக் குறிப்பிடலாம், நீங்கள் அசல் சுற்றுவட்டத்தை விருப்பமாக மாற்றலாம். இயல்பாக இதுFalseஎன அமைக்கப்பட்டு, அசல் சுற்றுகளின் நகல் முறையிலிருந்து திரும்பப் பெறப்படும்.ஒரு புதிய முறை:meth: ~ qiskit.circuit.QuantumCircuit.num_nonlocal_gates: வகுப்பில் சேர்க்கப்பட்டுள்ளது :class:` qiskit.circuit.QuantumCircuit` வகுப்பில். இந்த முறை 2 அல்லது அதற்கு மேற்பட்ட குவிட்களை உள்ளடக்கிய ஒரு சுற்றுவட்டத்தின் வாயில்களின் எண்ணிக்கையை வழங்கும். இந்த வாயில்கள் செயல்படுத்த நேரம் மற்றும் பிழையின் அடிப்படையில் அதிக விலை கொண்டவை.
The
qiskit.circuit.QuantumCircuitmethodiso()for adding anIsometrygate to the circuit has a new alias. You can now callqiskit.circuit.QuantumCircuit.isometry()in addition to callingiso.வெவ்வேறு இணைப்பு வரைபடங்களுக்கான (எ.கா. முழு, கட்டம், வரி, முதலியன) ஒரு குறுகிய விளக்கத்தை சேமிப்பதற்கான
descriptionபண்புக்கூறு :class: சேர்க்கப்பட்டுள்ளது : ~ qiskit.transpiler.CouplingMap வகுப்பு.ஒரு புதிய முறை :meth: ~ qiskit.dagcircuit.DAGCircuit.compose வகுப்பில் சேர்க்கப்பட்டுள்ளது :class:` ~ qiskit.dagcircuit.DAGCircuit` வகுப்பில் அவற்றின் DAG கள் வழியாக இரண்டு சுற்றுகளை இயற்றுவதற்காக.
dag_left.compose(dag_right, edge_map={right_qubit0: self.left_qubit1, right_qubit1: self.left_qubit4, right_clbit0: self.left_clbit1, right_clbit1: self.left_clbit0})
┌───┐ ┌─────┐┌─┐ lqr_1_0: ───┤ H ├─── rqr_0: ──■──┤ Tdg ├┤M├ ├───┤ ┌─┴─┐└─┬─┬─┘└╥┘ lqr_1_1: ───┤ X ├─── rqr_1: ┤ X ├──┤M├───╫─ ┌──┴───┴──┐ └───┘ └╥┘ ║ lqr_1_2: ┤ U1(0.1) ├ + rcr_0: ════════╬════╩═ = └─────────┘ ║ lqr_2_0: ─────■───── rcr_1: ════════╩══════ ┌─┴─┐ lqr_2_1: ───┤ X ├─── └───┘ lcr_0: ═══════════ lcr_1: ═══════════ ┌───┐ lqr_1_0: ───┤ H ├────────────────── ├───┤ ┌─────┐┌─┐ lqr_1_1: ───┤ X ├─────■──┤ Tdg ├┤M├ ┌──┴───┴──┐ │ └─────┘└╥┘ lqr_1_2: ┤ U1(0.1) ├──┼──────────╫─ └─────────┘ │ ║ lqr_2_0: ─────■───────┼──────────╫─ ┌─┴─┐ ┌─┴─┐ ┌─┐ ║ lqr_2_1: ───┤ X ├───┤ X ├──┤M├───╫─ └───┘ └───┘ └╥┘ ║ lcr_0: ═══════════════════╩════╬═ ║ lcr_1: ════════════════════════╩═`` Qiskit.test.mock`` இல் உள்ள போலி பின்தளத்தில் இப்போது ஒரு செயல்பாட்டு
run() `` முறை உள்ளது, இது உண்மையான சாதனங்களுக்கு ஒத்த முடிவுகளை வழங்கும். `` qiskit-aerநிறுவப்பட்டிருந்தால், போலி பின்தளத்தில் சாதனம் ஸ்னாப்ஷாட்டில் இருந்து கட்டப்பட்ட சத்தம் மாதிரியுடன் ஒரு உருவகப்படுத்துதல் இயக்கப்படும். இல்லையெனில் ,:class: qiskit.providers.basicaer.QasmSimulatorPy ஒரு சிறந்த உருவகப்படுத்துதலை இயக்க பயன்படும். கூடுதலாக, ஒரு துடிப்பு சோதனைrunக்கு அனுப்பப்பட்டு, கிஸ்கிட்-ஏர் நிறுவப்பட்டால், துடிப்பு அட்டவணைகளை உருவகப்படுத்த `` PulseSimulator`` பயன்படுத்தப்படும்.The
qiskit.result.Result()methodget_counts()will now return a list of all the counts available when there are multiple circuits in a job. This works whenget_counts()is called with no arguments.இந்த அம்சத்திற்கான முக்கிய கருத்தாகும், ஒரே வரைபடத்தில் பல சுற்றுகளிலிருந்து அனைத்து முடிவுகளையும் வரைவது. எடுத்துக்காட்டாக, இதுபோன்ற ஒன்றை இப்போது செய்ய முடியும்:
from qiskit import execute from qiskit import QuantumCircuit from qiskit.providers.basicaer import BasicAer from qiskit.visualization import plot_histogram sim = BasicAer.get_backend('qasm_simulator') qc = QuantumCircuit(2) qc.h(0) qc.cx(0, 1) qc.measure_all() result = execute([qc, qc, qc], sim).result() plot_histogram(result.get_counts())
ஒரு புதிய குவார்க், `` initial_state``:func: qiskit.visualization.circuit_drawer செயல்பாடு மற்றும் :class:` ~ qiskit.circuit.QuantumCircuit` முறை:meth: ~ qiskit.circuit.QuantumCircuit இல் சேர்க்கப்பட்டுள்ளது. வரைய.
Trueஎன அமைக்கப்பட்டால், ஆரம்ப நிலை அனைத்து பின்தளத்தில் சுற்று காட்சிப்படுத்தல்களில் சேர்க்கப்படும். உதாரணத்திற்கு:from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.measure_all() circuit.draw(output='mpl', initial_state=True)
ஒரு: வகுப்பில் அழைக்கக்கூடியதை இப்போது செருக முடியும்:class: qiskit.pulse.InstructionScheduleMap இது ஒரு புதிய: வகுப்பைத் தருகிறது:class:` qiskit.pulse.Schedule` அளவுருக்கள் என அழைக்கப்படும் போது. உதாரணத்திற்கு:
def test_func(x): sched = Schedule() sched += pulse_lib.constant(int(x), amp_test)(DriveChannel(0)) return sched inst_map = InstructionScheduleMap() inst_map.add('f', (0,), test_func) output_sched = inst_map.get('f', (0,), 10) assert output_sched.duration == 10
இரண்டு புதிய கேட் வகுப்புகள் ,: வகுப்பு: qiskit.extensions.iSwapGate மற்றும்: வகுப்பு:` qiskit.extensions.DCXGate`, அவற்றுடன்: வகுப்பு: ~ qiskit.circuit.QuantumCircuit முறைகள்: மெத்:` ~ qiskit.circuit .QuantumCircuit.iswap` மற்றும்: meth: ~ qiskit.circuit.QuantumCircuit.dcx நிலையான நீட்டிப்புகளில் சேர்க்கப்பட்டுள்ளன. உள்நாட்டில் ஒருவருக்கொருவர் சமமான இந்த வாயில்கள் குறிப்பிட்ட XY இடைவினைகளைச் செயல்படுத்த பயன்படுத்தப்படலாம். இந்த வாயில்களுக்கான சுருக்கமான உந்துதலை இங்கே காணலாம்
The
qiskit.providers.BaseJobclass now has a new methodwait_for_final_state()that polls for the job status until the job reaches a final state (such asDONEorERROR). This method also takes an optionalcallbackkwarg which takes a Python callable that will be called during each iteration of the poll loop.வகுப்பின் `` search_width`` மற்றும் `` search_depth`` பண்புக்கூறுகள்
qiskit.transpiler.passes.LookaheadSwapபாஸ் இப்போது பாஸைத் தொடங்கும்போது தீர்க்கப்படக்கூடியவை. ஒரு பெரிய தேடல் இடம் பெரும்பாலும் அதிக நேரம் இயங்கும் நேரத்தின் செலவில், அதிக உகந்த சுற்றுகளுக்கு வழிவகுக்கும்.வகுப்பில் உள்ள வினாடிகளின் எண்ணிக்கை: ~ qiskit.providers.models.BackendConfiguration ஐ இப்போது சொத்து வழியாக அணுகலாம்: py: attr:` ~ qiskit.providers.models.BackendConfiguration.num_qubits`. இது முன்பு `` n_qubits`` பண்புக்கூறு வழியாக மட்டுமே அணுகக்கூடியது.
இரண்டு புதிய முறைகள் ,:meth: ~ qiskit.quantum_info.OneQubitEulerDecomposer.angles மற்றும்:meth:` ~ qiskit.quantum_info.OneQubitEulerDecomposer.angles_and_phase`, இதில் சேர்க்கப்பட்டுள்ளன:class: qiskit. இந்த முறைகள் சரிபார்ப்பு இல்லாமல் தொடர்புடைய அளவுருக்களைத் தரும், மேலும் ` OneQubitEulerDecomposer`` பொருளை அழைப்பது சரிபார்ப்புடன் முழு தொகுப்பையும் செய்யும்.
ஒரு
RRசிதைவு அடிப்படையானது: வகுப்பில் சேர்க்கப்பட்டுள்ளதுqiskit.quantum_info.OneQubitEulerDecomposerஒரு தன்னிச்சையான 2x2 ஒற்றுமையை இரண்டாக சிதைப்பதற்காக :class:` ~ qiskit.extensions.RGate` சுற்று.சுருக்கமான `` பேஸ் ஆபரேட்டர்`` வகுப்பின் துணைப்பிரிவுகளாக இருக்கும் பொருள்களுக்கு `` கர்க்ஸ்`` அமைக்கும் திறனைச் சேர்க்கிறது. பொருளை `` op (qargs) `` (`` op`` என்பது ஒரு ஆபரேட்டர் வகுப்பு) என்று அழைப்பதன் மூலம் இது செய்யப்படுகிறது, மேலும் அசல் பொருளின் ஆழமற்ற நகலை ஒரு qargs சொத்து தொகுப்புடன் திருப்பித் தரும். அத்தகைய பொருள்: மெத்: ~ qiskit.quantum_info.Operator.compose அல்லது: meth:` ~ qiskit.quantum_info.Operator.dot` முறைகளுடன் பயன்படுத்தப்படும்போது, `` குர்க்ஸ்` போது குவார்களுக்கான உள் மதிப்பு பயன்படுத்தப்படும். `முறை குவார்க் பயன்படுத்தப்படவில்லை. இது பைனரி ஆபரேட்டர்களைப் பயன்படுத்தி துணை அமைப்பு அமைப்பை அனுமதிக்கிறது, எடுத்துக்காட்டாக:
from qiskit.quantum_info import Operator init = Operator.from_label('III') x = Operator.from_label('X') h = Operator.from_label('H') init @ x([0]) @ h([1])
சேர்க்கிறது: வகுப்பு: qiskit.quantum_info.Clifford ஆபரேட்டர் வகுப்பு` குவாண்டம்_இன்ஃபோ` தொகுதிக்கு. இந்த ஆபரேட்டர் கிளிஃபோர்டு குழுவிலிருந்து ஒரு என்-க்விட் யூனிட்டரி ஆபரேட்டரின் திறமையான சிம்பலெக்டிக் பிரதிநிதித்துவம் ஆகும். இந்த வகுப்பில் ஒரு: மெத்: ~ qiskit.quantum_info.Clifford.to_circuit முறை ஒரு: வகுப்பில் தொகுக்கப்படுகிறது: கிளிஃபோர்டு வாயில்களின்` q qiskit.QuantumCircuit` குறைந்த எண்ணிக்கையிலான CX வாயில்கள் 3-குவிட் வரை. இது N> 3 குவிட்களுக்கான பொதுவான தொகுப்பையும் வழங்குகிறது, ஆனால் இந்த முறை இரண்டு-குவிட் வாயில்களின் எண்ணிக்கையில் உகந்ததல்ல.
சேர்க்கிறது:class: qiskit.quantum_info.SparsePauliOp ஆபரேட்டர் வகுப்பு. இது ஒரு என்-க்விட் மேட்ரிக்ஸின் திறமையான பிரதிநிதித்துவம் ஆகும், இது பவுலி அடிப்படையில் குறைவாக உள்ளது மற்றும் ஒரு: வர்க்கத்தைப் பயன்படுத்துகிறது :class: qiskit.quantum_info.PauliTable மற்றும் அதன் தரவு கட்டமைப்பிற்கான சிக்கலான குணகங்களின் திசையன்.
இந்த வகுப்பு :class: qiskit.quantum_info.Operator வகுப்பின் அதே செயல்பாட்டை ஆதரிக்கிறது:class:` ~ qiskit.quantum_info.SparsePauliOp` பொருள்களை டென்சார் செய்யலாம், இசையமைக்கலாம், அளவிடலாம், பெருக்கலாம், கழிக்கலாம்.
சுறுசுறுப்பான வரிசைகள் அல்லது:class: ~ qiskit.quantum_info.Operator பொருள்களை a:class:` ~ qiskit.quantum_info.SparsePauliOp` ஐ :class: ~ qiskit.quantum_info.SparsePauliOp.from_operator` முறையைப் பயன்படுத்தி மாற்றலாம். :class: ~ qiskit.quantum_info.SparsePauliOp ஐ ஒரு சிதறிய csr_matrix அல்லது அடர்த்தியான நம்பி வரிசைக்கு:class:` ~ qiskit.quantum_info.SparsePauliOp.to_matrix` முறை, அல்லது ஒரு :class: qumkin.qu. :class: `~ qiskit.quantum_info.SparsePauliOp.to_operator முறையைப் பயன்படுத்தி ஆபரேட்டர்` பொருள்.
A
SparsePauliOpcan be iterated over in terms of itsPauliTablecomponents and coefficients, its coefficients and Pauli string labels using thelabel_iter()method, and the (dense or sparse) matrix components using thematrix_iter()method.சேர்:meth: ஒரு குவாண்டம் சேனலின் வைர நெறிமுறையை (முற்றிலும் கட்டுப்படுத்தப்பட்ட சுவடு-விதிமுறை) கணக்கிடுவதற்கான qiskit.quantum_info.diamond_norm செயல்பாடு. `` diamond_norm(chan1 - chan2)`` ஐப் பயன்படுத்தி இரண்டு குவாண்டம் சேனல்களுக்கு இடையிலான தூரத்தை கணக்கிட இதைப் பயன்படுத்தலாம்.
ஒரு புதிய வகுப்பு:class: qiskit.quantum_info.PauliTable சேர்க்கப்பட்டுள்ளது. இது N-qubit Pauli ஆபரேட்டர்களின் பட்டியலின் திறமையான சிம்பலெக்டிக் பிரதிநிதித்துவம் ஆகும். இந்த வகுப்பின் சில அம்சங்கள்:
PauliTableobjects may be composed, and tensored which will return aPauliTableobject with the combination of the operation (compose(),dot(),expand(),tensor()) between each element of the first table, with each element of the second table.இரண்டு அட்டவணைகள் சேர்ப்பது ஒவ்வொரு அட்டவணையிலும் உள்ள சொற்களின் பட்டியல் இணைப்பாக செயல்படுகிறது (`` + ``).
பவுலி அட்டவணைகளை லெக்சோகிராஃபிக் (டென்சர் தயாரிப்பு) ஒழுங்கு அல்லது பவுலி எடைகள் (:meth: ~ qiskit.quantum_info.PauliTable.sort) மூலம் வரிசைப்படுத்தலாம்.
நகல் கூறுகளை எண்ணி நீக்கலாம் (:meth: ~ qiskit.quantum_info.PauliTable.unique).
பவுலி சரம் லேபிள்கள் (:meth: q qiskit.quantum_info.PauliTable.label_iter), அல்லது அடர்த்தியான நம்பி வரிசை அல்லது சிதறிய சிஎஸ்ஆர் மெட்ரிக்குகள் (:meth:` ~ qiskit.quantum_info.PauliTable.matrix_iter`).
பவுலி அட்டவணையின் கூறுகளுக்கும் மற்றொரு பவுலிக்கும் இடையிலான பரிமாற்றத்தை சரிபார்க்கிறது (:meth: ~ qiskit.quantum_info.PauliTable.commutes) அல்லது பவுலி அட்டவணை (:meth:` ~ qiskit.quantum_info.PauliTable.commutes_with_all`)
கூடுதல் விவரங்களுக்கு: வகுப்பு: qiskit.quantum_info.PauliTable வகுப்பு API ஆவணங்களைக் காண்க.
சேர்க்கிறது: வகுப்பு: qiskit.quantum_info.StabilizerTable class. இது: வர்க்கம்: qiskit.quantum_info.PauliTable வகுப்பின் துணைப்பிரிவாகும், இதில் பவுலி அட்டவணை வரிசையுடன் பூலியன் கட்ட திசையன் அடங்கும். இது +1 அல்லது -1 குணகத்துடன் உண்மையான-பவுலி ஆபரேட்டர்களாக இருக்கும் நிலைப்படுத்தி ஆபரேட்டர்களின் பட்டியலைக் குறிக்கிறது. நிலைப்படுத்தி மெட்ரிக்குகள் உண்மையானவை என்பதால் `` "Y" `` லேபிள் மேட்ரிக்ஸ் `` [[0, 1], [-1, 0]] `` என வரையறுக்கப்படுகிறது. கூடுதல் தகவலுக்கு API ஆவணங்களைக் காண்க.
சேர்க்கிறது: func: qiskit.quantum_info.pauli_basis செயல்பாடு இது ஒரு N- குவிட் பவுலி அடிப்படையை ஒரு: வர்க்கமாக அளிக்கிறது:` qiskit.quantum_info.PauliTable` பொருள். இந்த அடிப்படையின் வரிசைமுறை நிலையான லெக்சோகிராஃபிக் (டென்சர் தயாரிப்பு) வரிசையால் அல்லது அடையாளமற்ற பவுலி சொற்களின் எண்ணிக்கையால் (எடை) இருக்கலாம்.
சேர்க்கிறது: வகுப்பு: qiskit.quantum_info.ScalarOp ஆபரேட்டர் வகுப்பு, இது ஒரு அடையாள ஆபரேட்டரின் அளவிடக்கூடிய பலவற்றைக் குறிக்கிறது. தன்னிச்சையான பரிமாண துணை அமைப்புகளில் ஒரு அடையாளத்தைத் தொடங்க இது பயன்படுத்தப்படலாம், மேலும் இது மறைமுகமாக மற்ற `` பேஸ் ஆபரேட்டர்`` துணைப்பிரிவுகளுக்கு மாற்றப்படும் (ஒரு: வகுப்பு: qiskit.quantum_info.Operator அல்லது: வகுப்பு:` qiskit.quantum_info.SuperOp `) அது அவர்களுடன் இயற்றப்படும்போது அல்லது சேர்க்கப்படும்போது.
எடுத்துக்காட்டு: அடையாளம் செய்பவர்
from qiskit.quantum_info import ScalarOp, Operator X = Operator.from_label('X') Z = Operator.from_label('Z') init = ScalarOp(2 ** 3) # 3-qubit identity op = init @ X([0]) @ Z([1]) @ X([2]) # Op XZX
புதிய முறை: . அனைத்து துணை அமைப்புகளின் ஒருங்கிணைந்த பரிமாணங்கள் அசல் ஆபரேட்டருக்கு சமமாக இருக்க வேண்டும் அல்லது விதிவிலக்கு எழுப்பப்படும்.
சேர்க்கிறது: func: ஒரு சீரற்றதை உருவாக்குவதற்கு qiskit.quantum_info.random_clifford: வகுப்பு:` qiskit.quantum_info.Clifford` Operator.
சேர்: func: நிலையான: வர்க்கத்துடன் ஒரு சீரற்ற குவாண்டம் சேனலை உருவாக்குவதற்கான qiskit.quantum_info.random_quantum_channel செயல்பாடு:: qiskit.quantum_info.Choi- தரவரிசை: வகுப்பில்: ~ qiskit.quantum_info.Stinespring பிரதிநிதித்துவம்.
சேர்: func: qiskit.quantum_info.random_hermitian ஒரு சீரற்ற ஹெர்மிடியன் உருவாக்க: வகுப்பு:` ~ qiskit.quantum_info.Operator`.
சேர்: func: ஒரு சீரற்றதை உருவாக்குவதற்கு qiskit.quantum_info.random_statevector: வகுப்பு:` ~ qiskit.quantum_info.Statevector`.
சேர்க்கிறது: func: ஒரு சீரற்றதை உருவாக்குவதற்கு qiskit.quantum_info.random_pauli_table: வகுப்பு:` qiskit.quantum_info.PauliTable.
சேர்க்கிறது: func: qiskit.quantum_info.random_stabilizer_table ஒரு சீரற்றதை உருவாக்குவதற்கு: வகுப்பு:` qiskit.quantum_info.StabilizerTable`.
வகுப்புக்கு `` num_qubits`` பண்புக்கூறு சேர்க்கவும்: qiskit.quantum_info.StateVector மற்றும்: class:` qiskit.quantum_info.DensityMatrix` வகுப்புகள். இது என்-குவிட் மாநிலங்களுக்கான குவிட்களின் எண்ணிக்கையைத் தருகிறது மற்றும் க்விட் அல்லாத மாநிலங்களுக்கு `` எதுவுமில்லை``.
சேர்க்கிறது: மெத்: ~ qiskit.quantum_info.Statevector.to_dict மற்றும்: மெத்:` ~ qiskit.quantum_info.DensityMatrix.to_dict` மாற்றுவதற்கான முறைகள்: வகுப்பு: qiskit.quantum_info.Statevector மற்றும்: class:` qiskit.quant. ப்ரான்-கெட் குறியீட்டு அகராதியில் டென்சிட்டிமேட்ரிக்ஸின் பொருள்கள்.
உதாரணமாக
from qiskit.quantum_info import Statevector state = Statevector.from_label('+0') print(state.to_dict())
{'00': (0.7071067811865475+0j), '10': (0.7071067811865475+0j)}from qiskit.quantum_info import DensityMatrix state = DensityMatrix.from_label('+0') print(state.to_dict())
{'00|00': (0.4999999999999999+0j), '10|00': (0.4999999999999999+0j), '00|10': (0.4999999999999999+0j), '10|10': (0.4999999999999999+0j)}சேர்க்கிறது: மெத்: ~ qiskit.quantum_info.Statevector.probilities மற்றும்: மெத்:` ~ qiskit.quantum_info.DensityMatrix.probables` to: class: qiskit.quantum_info.Statevector மற்றும்: class:` qiskit.quantum_in. குறிப்பிட்ட துணை அமைப்புகளுக்கான கணக்கீட்டு அடிப்படையில் அளவீட்டு விளைவு நிகழ்தகவுகளின் வரிசையை வழங்கும் வகுப்புகள்.
உதாரணமாக
from qiskit.quantum_info import Statevector state = Statevector.from_label('+0') print(state.probabilities())
[0.5 0. 0.5 0. ]
from qiskit.quantum_info import DensityMatrix state = DensityMatrix.from_label('+0') print(state.probabilities())
[0.5 0. 0.5 0. ]
சேர்க்கிறது: மெத்: ~ qiskit.quantum_info.Statevector.probilities மற்றும்: மெத்:` ~ qiskit.quantum_info.DensityMatrix.probables` to: class: qiskit.quantum_info.Statevector மற்றும்: class:` qiskit.quantum_in. குறிப்பிட்ட துணை அமைப்புகளுக்கான கணக்கீட்டு அடிப்படையில் அளவீட்டு விளைவு நிகழ்தகவுகளின் வரிசையை வழங்கும் வகுப்புகள்.
from qiskit.quantum_info import Statevector state = Statevector.from_label('+0') print(state.probabilities_dict())
{'00': 0.4999999999999999, '10': 0.4999999999999999}from qiskit.quantum_info import DensityMatrix state = DensityMatrix.from_label('+0') print(state.probabilities_dict())
{'00': 0.4999999999999999, '10': 0.4999999999999999}சேர்: மெத்: ~ qiskit.quantum_info.Statevector.sample_counts மற்றும்: மெத்:` ~ qiskit.quantum_info.Statevector.sample_memory` முறைகள்: வகுப்பிற்கு: ~ qiskit.quantum_info.Statevector மற்றும்: வகுப்பு:` ~ qisk. குவாண்டம்_இன்ஃபோ.டென்சிட்டி மேட்ரிக்ஸின் வகுப்புகள் துணை அமைப்புகளில் அளவீட்டு விளைவுகளை மாதிரிப்படுத்துகின்றன.
எடுத்துக்காட்டுகள்:
ஒரு ஸ்டேட்வெக்டரிடமிருந்து மாதிரி எடுப்பதன் மூலம் ஒரு எண்ணிக்கையிலான அகராதியை உருவாக்கவும்
from qiskit.quantum_info import Statevector psi = Statevector.from_label('+0') shots = 1024 # Sample counts dictionary counts = psi.sample_counts(shots) print('Measure both:', counts) # Qubit-0 counts0 = psi.sample_counts(shots, [0]) print('Measure Qubit-0:', counts0) # Qubit-1 counts1 = psi.sample_counts(shots, [1]) print('Measure Qubit-1:', counts1)
Measure both: {'00': 499, '10': 525} Measure Qubit-0: {'0': 1024} Measure Qubit-1: {'0': 524, '1': 500}ஒவ்வொரு மாதிரிக்கும் அளவீட்டு விளைவுகளின் வரிசையைத் தரவும்
from qiskit.quantum_info import Statevector psi = Statevector.from_label('-1') shots = 10 # Sample memory mem = psi.sample_memory(shots) print('Measure both:', mem) # Qubit-0 mem0 = psi.sample_memory(shots, [0]) print('Measure Qubit-0:', mem0) # Qubit-1 mem1 = psi.sample_memory(shots, [1]) print('Measure Qubit-1:', mem1)
Measure both: ['01' '01' '11' '01' '11' '01' '11' '11' '11' '11'] Measure Qubit-0: ['1' '1' '1' '1' '1' '1' '1' '1' '1' '1'] Measure Qubit-1: ['0' '0' '0' '0' '0' '0' '1' '1' '1' '0']
A :meth:` ~ qiskit.quantum_info.Statevector.मापन ` method to the :class:` qiskit.quantum_info.Statevector ` and :class:` qiskit.quantum_info.DensityMatrix ` quantum state classes. இது குறிப்பிட்ட துணைமுறைகளிலிருந்து ஒற்றை அளவிலான முடிவுகளைக் கொண்டு ஒரே அளவைக் கணக்கிட அனுமதிக்கிறது. எடுத்துக்காட்டாக
from qiskit.quantum_info import Statevector psi = Statevector.from_label('+1') # Measure both qubits outcome, psi_meas = psi.measure() print("measure([0, 1]) outcome:", outcome, "Post-measurement state:") print(psi_meas) # Measure qubit-1 only outcome, psi_meas = psi.measure([1]) print("measure([1]) outcome:", outcome, "Post-measurement state:") print(psi_meas)
measure([0, 1]) outcome: 11 Post-measurement state: Statevector([0.+0.j, 0.+0.j, 0.+0.j, 1.+0.j], dims=(2, 2)) measure([1]) outcome: 0 Post-measurement state: Statevector([0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j], dims=(2, 2))ஒரு: மெத்: ~ qiskit.quantum_info.Statevector.reset முறையை: வகுப்பில் சேர்க்கிறது:` qiskit.quantum_info.Statevector` மற்றும்: வகுப்பு: qiskit.quantum_info.DensityMatrix குவாண்டம் மாநில வகுப்புகள். இது சில அல்லது அனைத்து துணை அமைப்புகளையும்: கணித: | 0 ரேங்கிள் நிலைக்கு மீட்டமைக்க அனுமதிக்கிறது. உதாரணத்திற்கு.
from qiskit.quantum_info import Statevector psi = Statevector.from_label('+1') # Reset both qubits psi_reset = psi.reset() print("Post reset state: ") print(psi_reset) # Reset qubit-1 only psi_reset = psi.reset([1]) print("Post reset([1]) state: ") print(psi_reset)
Post reset state: Statevector([1.+0.j, 0.+0.j, 0.+0.j, 0.+0.j], dims=(2, 2)) Post reset([1]) state: Statevector([0.+0.j, 1.+0.j, 0.+0.j, 0.+0.j], dims=(2, 2))ஒரு புதிய காட்சிப்படுத்தல் செயல்பாடு: func: ஒற்றை குயிட் கேட் மாற்றங்களைக் காட்சிப்படுத்த qiskit.visualization.visualize_transition சேர்க்கப்பட்டுள்ளது. இது ஒரு குவிட் சுற்றுக்கு எடுத்து, ஒரு ப்ளொச் கோளத்தில் குவிட் நிலை மாற்றங்களின் அனிமேஷனை வழங்குகிறது. இந்த செயல்பாட்டைப் பயன்படுத்த நீங்கள் உலகளவில் ஒரு மேட்லோட்லிப் அனிமேஷன் எழுத்தாளருக்கான சார்புகளை நிறுவி கட்டமைத்திருக்க வேண்டும். இது குறித்த கூடுதல் விவரங்களுக்கு matplotlib ஆவணங்கள் <https://matplotlib.org/api/animation_api.html#writer-classes> _ ஐப் பார்க்கவும். இருப்பினும், இயல்புநிலை வழக்கில் FFmpeg <https://www.ffmpeg.org/> _ நிறுவப்பட்டிருப்பதை உறுதிசெய்வது இந்த செயல்பாட்டைப் பயன்படுத்த போதுமானது.
இது பின்வரும் வாயில்களுடன் சேர்க்கையை ஆதரிக்கிறது:
HGateXGateYGateZGateRXGateRYGateRZGateSGateSdgGateTGateTdgGateU1Gate
உதாரணத்திற்கு:
from qiskit.visualization import visualize_transition from qiskit import * qc = QuantumCircuit(1) qc.h(0) qc.ry(70,0) qc.rx(90,0) qc.rz(120,0) visualize_transition(qc, fpg=20, spg=1, trace=True)
: func: ~ qiskit.execute.execute இல் ஒரு புதிய குவார்க் உள்ளது` அட்டவணை_சர்க்யூட்`. `` Schedule_circuit = True`` ஐ அமைப்பதன் மூலம் இது ஒரு: வகுப்பில் சுற்றுவட்டத்தை திட்டமிட உதவுகிறது: ~ qiskit.pulse.Schedule. இது பயனர்களை உருவாக்க அனுமதிக்கிறது: வகுப்பு: qiskit.circuit.QuantumCircuit பொருள்கள்` as_late_as_possible` மற்றும்` as_soon_as_possible` முறைகள் போன்ற தனிப்பயன் திட்டமிடல் முறைகளைப் பயன்படுத்த. உதாரணத்திற்கு:
job = execute(qc, backend, schedule_circuit=True, scheduling_method="as_late_as_possible")
ஒரு புதிய சூழல் மாறி `` QISKIT_SUPPRESS_PACKAGING_WARNINGS`` ஐ `` Y`` அல்லது `` y`` என அமைக்கலாம், இது `` கிஸ்கிட்-ஏர்`` மற்றும் `` கிஸ்கிட்-இப்மக்-வழங்குநர்`` நிறுவப்படவில்லை பற்றிய எச்சரிக்கைகளை அடக்கும். இறக்குமதி நேரத்தில். கிஸ்கிட்-டெர்ராவை மட்டுமே இயக்கும் பயனர்களுக்கு இது பயனுள்ளதாக இருக்கும் (அல்லது கிஸ்கிட்-ஏர் மற்றும் / அல்லது கிஸ்கிட்-இப்மக்-வழங்குநர் அல்ல) மற்றும் எச்சரிக்கைகள் சாத்தியமான பேக்கேஜிங் சிக்கலின் அறிகுறியாக இல்லை. பயனர் உள்ளமைவு கோப்பு அவற்றை முடக்க அமைக்கப்பட்டிருந்தாலும் எச்சரிக்கைகள் எப்போதும் இயக்கப்பட்டிருப்பதை உறுதிசெய்ய நீங்கள் சூழல் மாறியை `` N`` அல்லது `` n`` என அமைக்கலாம்.
புதிய பயனர் வடிவமைப்பு கோப்பு தேர்வு ` ` suppress_packaging_warnings ` ` சேர்க்கப்பட்டது. உங்கள் பயனர் வடிவமைப்பு கோப்பில் ` ` உண்மையான ` ` ` உண்மையில் அமைக்கும்போது:
[default] suppress_packaging_warnings = true
இது ` qiskit-aer ` ` மற்றும் ` qiskit-ibmq-வழங்குபவர் ` ` இறக்குமதி நேரத்தில் நிறுவப்படவில்லை. இது பயனர்கள் பயனர்களுக்கு மட்டுமே qiskit-terra (அல்லது qiskit-aer and/or qiskit-ibmq-வழங்குபவர்) மட்டுமே இயங்கும் பயனர்களுக்கு பயன்படுகிறது. பயனர் வடிவமைப்பு கோப்பு எச்சரிக்கை நீக்குவதற்கு அமைக்கப்பட்டால், ` ` QISKIT_ SUPPRESS_PACKAGING_WARNINGS" to "N" or "n"
:func:` qiskit.compiler.transpile () ` has two new kwargs, ` ` layout_method ` ` and ` routing_method ` `. இவை நீங்கள் ஒரு குறிப்பிட்ட முறையை தேர்ந்தெடுக்க அனுமதிக்கிறது. உதாரணமாக:
transpile(circ, backend, layout_method='dense', routing_method='lookahead')
இயங்கும்:class: ~ qiskit.transpiler.passes.DenseLayout தளவமைப்பு பாஸ் மற்றும்:class:` ~ qiskit.transpiler.passes.LookaheadSwap` ரூட்டிங் பாஸ்.
துடிப்பு அறிவுறுத்தல்கள் கட்டமைக்கப்பட்ட பாணியில் குறிப்பிடத்தக்க எளிமைப்படுத்தல் செய்யப்பட்டுள்ளது.
முந்தைய பாணியுடன், `` கட்டளை` கள் சேனல்களுடன் ஒரு: py: class: ~ qiskit.pulse.instructions.Instruction ஐ உருவாக்க அழைக்கப்பட்டன. கட்டளைகள் மற்றும் அறிவுறுத்தல்கள் இரண்டின் பயன்பாடு குழப்பமான ஒரு புள்ளியாக இருந்தது. இது முந்தைய பாணி:
sched += Delay(5)(DriveChannel(0)) sched += ShiftPhase(np.pi)(DriveChannel(0)) sched += SamplePulse([1.0, ...])(DriveChannel(0)) sched += Acquire(100)(AcquireChannel(0), MemorySlot(0))
அல்லது, சமமாக (குறைவாகப் பயன்படுத்தப்பட்டாலும்):
sched += DelayInstruction(Delay(5), DriveChannel(0)) sched += ShiftPhaseInstruction(ShiftPhase(np.pi), DriveChannel(0)) sched += PulseInstruction(SamplePulse([1.0, ...]), DriveChannel(0)) sched += AcquireInstruction(Acquire(100), AcquireChannel(0), MemorySlot(0))
இப்போது, ஒரு கட்டளை * and * ஒரு வழிமுறையை உருவாக்குவதற்கு பதிலாக, ஒவ்வொரு கட்டளையும் ஒரு அறிவுறுத்தலாக மாற்றப்பட்டுள்ளது:
sched += Delay(5, DriveChannel(0)) sched += ShiftPhase(np.pi, DriveChannel(0)) sched += Play(SamplePulse([1.0, ...]), DriveChannel(0)) sched += SetFrequency(5.5, DriveChannel(0)) # New instruction! sched += Acquire(100, AcquireChannel(0), MemorySlot(0))
இப்போது ஒரு: py: class: ~ qiskit.pulse.instructions.Play அறிவுறுத்தல் உள்ளது, இது ஒரு துடிப்பு உறை மற்றும் ஒரு சேனலின் விளக்கத்தை எடுக்கும். ஒரு புதிய: py: class: ~ qiskit.pulse.pulse_lib.Pulse class: mod:` ~ qiskit.pulse.pulse_lib` இல் இருந்து துடிப்பு உறை விளக்கம் துணைப்பிரிவாக இருக்க வேண்டும்.பல்ஸ்.
உதாரணத்திற்கு:
Play(SamplePulse([0.1]*10), DriveChannel(0)) Play(ConstantPulse(duration=10, amp=0.1), DriveChannel(0))
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
0.9.0 வெளியீட்டில் நீக்கப்பட்ட: வகுப்பு: qiskit.dagcircuit.DAGNode முறை` பாப்` அகற்றப்பட்டது. நீங்கள் இந்த முறையைப் பயன்படுத்துகிறீர்கள் என்றால், அதே பணியைச் செய்ய பைத்தானின் `` டெல்`` அறிக்கை அல்லது `` டெலட்ர் () `` செயல்பாட்டைப் பயன்படுத்தலாம்.
ஒரு புதிய விருப்பமான விசைவு தேவை, ` pygments <https://pygments.org/>` _, சேர்க்கப்பட்டுள்ளது. :meth:` qiskit.circuit.QuantumCircuit.qasm ` முறையின்படி (210-10-012 ` qiskit.circuit.QuantumCircuit.qasm) வழிவகுப்பில் OpenQASM 2.0 குறியீடு (OpenQASM) 2.0 குறியீட்டை வழங்குவதற்கு பயன்படுகிறது. இது நிறுவப்பட்டிருக்க வேண்டும் (` ` pip install pygments ` ` அல்லது ` pip install qiskit-terra[visualization]` ) முன் ` `%circuit_library_info ` ` widget in :mod: qiskit.tools.jupyter ` or the ` formatted ` ` kwarg on the :meth:` ~ qiskit.circuit.QuantumCircuit.qasm ` method.
துடிப்பு `` இடையக`` விருப்பம்: வர்க்கம்: qiskit.pulse.Channel மற்றும்: class:` qiskit.pulse.Schedule` டெர்ரா 0.11.0 இல் நீக்கப்பட்டது, இப்போது அகற்றப்பட்டது. சேனலில் அல்லது ஒரு அட்டவணையில் தாமதத்தைச் சேர்க்க, தாமதத்துடன் உங்கள் அட்டவணையில் அதை வெளிப்படையாகக் குறிப்பிடவும்:
sched = Schedule() sched += Delay(5)(DriveChannel(0))
டெர்ரா 0.11.0 இல் நீக்கப்பட்ட `` பல்ஸ் சேனல்ஸ்பெக்`` இப்போது அகற்றப்பட்டது. அதற்கு பதிலாக பின்தளத்தில் உள்ளமைவைப் பயன்படுத்தவும்:
config = backend.configuration() drive_chan_0 = config.drives(0) acq_chan_0 = config.acquires(0)
அல்லது, சரியாக வழி நேரடியாக, ` DriveChannel (index) ` `.
ஒரு இறக்குமதி பாதை டெரா 0.10.0 இல் விரிவாக்கப்பட்டது மற்றும் இப்போது நீக்கப்பட்டுள்ளது: ` ` PulseChannel ` `, ` ` DriveChannel ` ` ` ` ` ControlChannel ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` `.
பாஸ் :class:` qiskit.transpiler.passes.CSPL வெளியீடு ` (இது 0.11.0 வெளியீட்டில் அறிமுகப்படுத்தப்பட்டது) முன்னேற்றக் கடல் மேலாளர் 2 மற்றும் 3 க்கு சேர்க்கப்பட்டுள்ளது. அளவு 2, 1,000 மற்றும் ஒரு நேரம் 10 நொடிகளின் ஒரு கால வரம்பு உள்ளது. அளவு 3, அழைப்பு வரம்பு 10,000 மற்றும் நேரம் 1 நிமிடம் ஆகும்.
முன்னமைக்கப்பட்ட பாஸ் மேலாளர்களில் பாஸ் இப்போது சேர்க்கப்பட்டுள்ளது பைதான்-கட்டுப்பாடு <https://pypi.org/project/python-constraint/> _ தொகுப்பு இனி விருப்ப சார்பு அல்ல, மேலும் தேவைகள் பட்டியலில் சேர்க்கப்பட்டுள்ளது.
ஒரு: வகுப்பு: qiskit.transpiler.PassManager க்கான ரன் நேர உள்ளமைவை அமைப்பதற்கு முன்னர் பயன்படுத்தப்பட்ட` டிரான்ஸ்பைல் கான்ஃபிக்` வகுப்பு நீக்கப்பட்டு அதற்கு பதிலாக ஒரு புதிய வகுப்பு: வகுப்பு:` qiskit.transpile.PassManagerConfig`. இந்த புதிய வகுப்பு ஒரு: வகுப்பை உருவாக்க தேவையான தகவல்களை மட்டுமே சேர்க்கும் வகையில் கட்டமைக்கப்பட்டுள்ளது: ~ qiskit.transpiler.PassManager. இந்த வகுப்பின் பண்புக்கூறுகள்:
initial_layoutbasis_gatescoupling_mapbackend_propertiesseed_transpiler
`` Transpile_circuit`` இல்:mod: qiskit.transpiler செயல்பாடு நீக்கப்பட்டது. தனிப்பயன்:class: ~ qiskit.transpiler.PassManager உடன் ஒரு சுற்றுவட்டத்தை மாற்ற நீங்கள் இப்போது:meth:` qiskit.transpiler.PassManager.run` முறையைப் பயன்படுத்த வேண்டும்:class: ~qiskit.transpiler.PassManager` பொருள் .
வகுப்பு: ~ qiskit.circuit.QuantumCircuit முறை: மெத்:` ~ qiskit.circuit.QuantumCircuit.draw` மற்றும்: func: qiskit.visualization.circuit_drawer செயல்பாடு இனி இயல்புநிலையாக காட்சிப்படுத்தல்களில் சேர்க்கப்பட்ட ஆரம்ப நிலையை சேர்க்காது . வெளியீட்டு காட்சிப்படுத்தலில் ஆரம்ப நிலையை நீங்கள் தக்க வைத்துக் கொள்ள விரும்பினால், `` ஆரம்ப_நிலையம்`` குவார்க்கை `` உண்மை`` என அமைக்க வேண்டும். எடுத்துக்காட்டாக, இயங்கும்:
from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.measure_all() circuit.draw(output='text')
░ ┌─┐ q_0: ─░─┤M├─── ░ └╥┘┌─┐ q_1: ─░──╫─┤M├ ░ ║ └╥┘ meas: 2/════╩══╩═ 0 1இது இனி ஆரம்ப நிலையை உள்ளடக்காது. நீங்கள் அதைத் தக்க வைத்துக் கொள்ள விரும்பினால் இயக்கலாம்:
from qiskit import QuantumCircuit circuit = QuantumCircuit(2) circuit.measure_all() circuit.draw(output='text', initial_state=True)
░ ┌─┐ q_0: |0>─░─┤M├─── ░ └╥┘┌─┐ q_1: |0>─░──╫─┤M├ ░ ║ └╥┘ meas: 0 2/════╩══╩═ 0 1qiskit.compiler.transpile()(andqiskit.execute.execute(), which usestranspileinternally) will now raise an error when thepass_managerkwarg is set and a value is set for other kwargs that are already set in an instantiatedPassManagerobject. Previously, these conflicting kwargs would just be silently ignored and the values in thePassManagerinstance would be used. For example:from qiskit.circuit import QuantumCircuit from qiskit.transpiler.pass_manager_config import PassManagerConfig from qiskit.transpiler import preset_passmanagers from qiskit.compiler import transpile qc = QuantumCircuit(5) config = PassManagerConfig(basis_gates=['u3', 'cx']) pm = preset_passmanagers.level_0_pass_manager(config) transpile(qc, optimization_level=3, pass_manager=pm)
இந்த வெளியீட்டிற்கு முன்னர் `` pm`` இல் உள்ள மதிப்பு அமைதியாகப் பயன்படுத்தப்படும், மேலும் `` optimization_level`` குவார்க்கின் மதிப்பு புறக்கணிக்கப்படும். இது பொருந்தும் `` transpile`` குவார்க்ஸ்:
optimization_levelbasis_gatescoupling_mapseed_transpilerbackend_propertiesinitial_layoutlayout_methodrouting_methodbackend
The
Operator,Clifford,SparsePauliOp,PauliTable,StabilizerTable, operator classes have an addedcallmethod that allows them to assign a qargs to the operator for use with thecompose(),dot(),evolve(),``+``, and-operations.வகுப்பின் கூட்டல் முறை:class: qiskit.quantum_info.Operator, வகுப்பு இப்போது ஒரு
qargகுவார்க்கை ஏற்றுக்கொள்கிறது, மற்றொன்று துணை அமைப்புகளில் அடையாளங்களைக் கருதி ஒரு பெரிய ஆபரேட்டரை ஒரு பெரிய நிறுவனத்தில் சேர்க்க அனுமதிக்கிறது (``qargs``on :meth:` ~ qiskit.quantum_info.Operator.compose` மற்றும்:meth: ~ qiskit.quantum_info.Operator.dot முறைகள்). இது கலவை போலவே அழைப்பு முறையைப் பயன்படுத்தி துணை அமைப்பு சேர்த்தலை அனுமதிக்கிறது. இந்த ஆதரவு அனைத்து BaseOperator துணைப்பிரிவுகளுக்கும் சேர்க்கப்பட்டுள்ளது (:class: ~ qiskit.quantum_info.ScalarOp ,:class:` ~ qiskit.quantum_info.Operator` ,:class: ~ qiskit.quantum_info.QuantumChannel).உதாரணத்திற்கு:
from qiskit.quantum_info import Operator, ScalarOp ZZ = Operator.from_label('ZZ') # Initialize empty Hamiltonian n_qubits = 10 ham = ScalarOp(2 ** n_qubits, coeff=0) # Add 2-body nearest neighbour terms for j in range(n_qubits - 1): ham = ham + ZZ([j, j+1])
BaseOperatorவகுப்பு புதுப்பிக்கப்பட்டுள்ளது, இதனால் கூட்டல், கழித்தல் மற்றும் அளவிடுதல் பெருக்கல் ஆகியவை இனி சுருக்க முறைகள் அல்ல. இதன் பொருள் அவை ஆதரிக்கப்படாவிட்டால் அவை இனி துணைப்பிரிவுகளில் செயல்படுத்தப்பட வேண்டியதில்லை. முறைகள் வரையறுக்கப்படாதபோது அடிப்படை வகுப்பு `` NotImplementedError`` ஐ உயர்த்தும்.The
qiskit.quantum_info.random_density_matrix()function will now return a randomDensityMatrixobject. In previous releases it returned a numpy array.The
qiskit.quantum_info.Statevectorandqiskit.quantum_info.DensityMatrixclasses no longer copy the input array if it is already the correct dtype.fastjsonschema <https://pypi.org/project/fastjsonschema/> _ ஒரு சார்புநிலையாக சேர்க்கப்பட்டுள்ளது. JSON திட்டத்திற்கு எதிராக qobj அகராதிகளின் மிக விரைவான சரிபார்ப்புக்கு இது பயன்படுத்தப்படுகிறது, `` to_dict () `` முறை qobj பொருள்களில்
validateமுக்கிய வாதத்துடன்Trueஎன அமைக்கப்பட்டிருக்கும்.Qodj கட்டுமான வகுப்புகள்:mod: qiskit.qobj இனி இயல்பாக qobj jsonschema க்கு எதிராக சரிபார்க்கப்படாது. இவை பின்வரும் வகுப்புகளை உள்ளடக்குகின்றன:
நீங்கள் இந்த சரிபார்ப்பை நம்பியிருந்தால் அல்லது qobj schema க்கு எதிராக அவற்றை சரிபார்க்க விரும்பினால், இதை "validate" க்வார்க் ஐ "உண்மை" என அமைக்குவதன் மூலம் இதை செய்யலாம் :meth:'~qiskit.qobj.QasmQobj.to_dict' முறை உயர் நிலை Qobj வகுப்புகள் ஒன்று இருந்து :class:'~qiskit.qobj.QasmQobj' அல்லது :class:'~qiskit.qobj.PulseQobj'. உதாரணமாக:
இது கியூஒபிஜே jsonschema எதிராக வெளியீட்டு அகராதி செல்லுபடியாக்க.
":meth:'qiskit.qobj.QasmQobj.to_dict' மற்றும் ":meth:'qiskit.qobj.PulseQobj.to_dict' இலிருந்து வெளியீடு அகராதி யானது IBMQ இன் API எதிர்பார்த்தபடி நேரடி json தொடர்வரிசைக்கான வடிவமைப்பில் இல்லை. இந்த Qobj பொருட்கள் நாம் வழங்குநர்கள் / பின்முனைகளுக்கு சோதனைகளை கடந்து செல்லும் தற்போதைய வடிவமைப்பாகும் மற்றும் நேரடியாக IBMQ API க்கு அனுப்பக்கூடிய ஒரு அகராதி வடிவமைப்பைக் கொண்டபோது , "qiskit-ibmq-provider" க்கு மிதமான பயனுள்ளதாக இருந்தது, இது மற்ற வழங்குநர்களுக்கு மிகவும் கடினமாக இருந்தது. குறிப்பாக உள்ளூர் போலி மடக்கு என்று வழங்குநர்கள். வழங்குநர்கள் மற்றும் IBMQ API கோரிக்கை வடிவமைப்புக்கு இடையே கடந்து செல்லும் வரையறைகளை முன்னோக்கி நகர்த்துவது மேலும் (பின்னோக்கி இணக்கமான முறையில்) எழுதுநர்கள் மற்றும் பின்முனைகளின் சுமையை க்குறைக்க வேண்டும்.
நடைமுறையில், இந்த முறைகளின் வெளியீடு மற்றும் முந்தைய வெளியீடுகளுக்கு இடையே உள்ள ஒரே செயல்பாட்டு வேறுபாடு சிக்கலான எண்கள் "complex" வகையுடன் குறிக்கப்படுகின்றன மற்றும் numபி வரிசைகள் இனி பட்டியலாக மாற்றப்படவில்லை. நீங்கள் முன்பு "json.dumps()" என்று நேரடியாக இந்த வெளியீட்டிற்குப் பிறகு "to_dict()" இன் வெளியீட்டில் அழைக்கப்பட்டிருந்தால், இந்த வழக்குகளைகையாள ஒரு தனிப்பயன் json குறியாக்கி தேவைப்படுகிறது. உதாரணமாக:
import json from qiskit.circuit import ParameterExpression from qiskit import qobj my_qasm = qobj.QasmQobj( qobj_id='12345', header=qobj.QobjHeader(), config=qobj.QasmQobjConfig(shots=1024, memory_slots=2, max_credits=10), experiments=[ qobj.QasmQobjExperiment(instructions=[ qobj.QasmQobjInstruction(name='u1', qubits=[1], params=[0.4]), qobj.QasmQobjInstruction(name='u2', qubits=[1], params=[0.4, 0.2]) ]) ] ) qasm_dict = my_qasm.to_dict() class QobjEncoder(json.JSONEncoder): """A json encoder for pulse qobj""" def default(self, obj): # Convert numpy arrays: if hasattr(obj, 'tolist'): return obj.tolist() # Use Qobj complex json format: if isinstance(obj, complex): return (obj.real, obj.imag) if isinstance(obj, ParameterExpression): return float(obj) return json.JSONEncoder.default(self, obj) json_str = json.dumps(qasm_dict, cls=QobjEncoder)
"json.dumps(my_qasm.to_dicd())" முந்தைய வெளியீடுகளில் செய்த அதே முறையில் json சரம் உருவாக்க வேண்டும்.
'CmdDef' டெர்ரா 0.11.0 இலிருந்து நீக்கப்பட்டது மற்றும் நீக்கப்பட்டது. அதற்கு பதிலாக :py:class:'~qiskit.pulse.InstructionScheduleMap' ஐ தொடர்ந்து பயன்படுத்தவும்.
:py:class:'~qiskit.pulse.InstructionScheduleMap' இல் உள்ள "cmds" மற்றும் "cmd_qubits" முறைகள் Terra 0.11.0 இலிருந்து நீக்கப்பட்டுவிட்டன. அதற்கு பதிலாக "வழிமுறைகளை" மற்றும் "qubits_with_instruction" பயன்படுத்தவும்.
டெரா வெளியீடு 0.11.0 இலிருந்து GHz ஐ விட ஹெர்ட்ஸ் இல் "qubit_freq_est" மற்றும் "meas_freq_est" என்று பல்ஸ்இயல்புநிலை அறிக்கை யிடப்பட்டுள்ளது. இந்த மாற்றம் குறித்து அறிவிக்கப்பட்ட ஒரு எச்சரிக்கை நீக்கப்பட்டது.
முன்னர் deprecated (0.11.0 வெளியீட்டில்) வகைகளின் அளவுருக்கள் :class:'qiskit.circuit.Instruction' இல் கடந்து செல்ல ஆதரவு. "sympy.Basic", "sympy.Expr", "qiskit.qasm.node.node.Node" (QASM ASM node) மற்றும் "sympy.Matrix' நீக்கப்பட்டது. அறிவுறுத்தல் அளவுருக்கள் ஆதரிக்கப்படும் வகைகள்:
intfloatcomplexstrlistnp.ndarray
பின்வரும் பண்புகள்: py: class: ~ qiskit.providers.models.BackendConfiguration:
dtdtmrep_time
இவை அனைத்தும் விநாடிகள் அலகுகள். 0.11.0 வெளியீட்டிற்கு முன், "dt" மற்றும் "dtm" ஆகியவை நானோ விநாடிகளின் அலகுகளைக் கொண்டிருந்தது. 0.12.0 வெளியீட்டிற்கு முன், "rep_time" மைக்ரோ விநாடிகள் அலகுகள் இருந்தன. இந்த மாற்றங்களை ப்பயனீட்டாளர்களுக்கு எச்சரிக்கை செய்யும் எச்சரிக்கைகள் இப்போது "பின்முனைஉள்ளமைவு" -இலிருந்து நீக்கப்பட்டுள்ளன.
ஒரு புதிய தேவை தேவைகள் பட்டியலில் சேர்க்கப்பட்டுள்ளது, 'retworkx <https://pypi.org/project/retworkx/>'_. இது Apache 2.0 உரிமம் பெற்ற வரைபட நூலகம், இது நெட்வொர்க்க்ஸிற்கு ஒத்த API ஐக் கொண்டுள்ளது, மேலும் டிரான்ஸ்பைலரின் ஒரு பகுதியாக :class:'qiskit.dagcircuit.DAGCircuit' நடவடிக்கைகளை கணிசமாக வேகப்படுத்த பயன்படுத்தப்படுகிறது. Qiskit Terra ஆல் ஆதரிக்கப்படும் அனைத்து தளங்களுக்குPyPI இல் பைனரிகள் வெளியிடப்படுகின்றன, ஆனால் நீங்கள் முன்தொகுக்கப்பட்ட பைனரிகள் இல்லாத ஒரு தளத்தைப் பயன்படுத்தினால், sdist இலிருந்து PIP நிறுவல் பற்றிய அறிவுறுத்தல்களுக்கு 'retworkx documentation <https://retworkx.readthedocs.io/en/stable/README.html#installing-retworkx>'_ ஐ பார்க்கவும்.
மாற்றத்தின் ஒரு பகுதியாக, டிரான்ஸ்பைலர் அல்லது DAGசர்க்கியூட் வகுப்பில் ஏதேனும் சிக்கல்களை நீங்கள் சந்தித்தால், முந்தைய நெட்வொர்க்எக்ஸ் செயல்படுத்தல் "USE_RETWORKX" ஐ "N" க்கு அமைப்பதன் மூலம் நீங்கள் மீண்டும் மாறலாம். இந்த விருப்பம் 0.14.0 வெளியீட்டில் நீக்கப்படும்.
தேய்மான குறிப்புகள்¶
ஒரு அகராதிarg 'data_dict' என :class:'qiskit.dagcircuit.DAGNode' க்கான கன்ஸ்ட்ரக்டர் க்கு தரவு அனுப்புகிறது மற்றும் ஒரு எதிர்கால வெளியீட்டில் நீக்கப்படும். அதற்கு பதிலாக நீங்கள் இப்போது கட்டுநர் kwargs போன்ற துறைகளில் கடந்து வேண்டும். உதாரணமாக:
from qiskit.dagcircuit import DAGNode data_dict = { 'type': 'in', 'name': 'q_0', } node = DAGNode(data_dict)
இப்போது இருக்க வேண்டும்:
from qiskit.dagcircuit import DAGNode node = DAGNode(type='in', name='q_0')
கேட் பொருள்கள் மற்றும் முறைகளின் பெயரிடுதல் மிகவும் சீரானதாக புதுப்பிக்கப்பட்டுள்ளது. பின்வரும் மாற்றங்கள் செய்யப்பட்டுள்ளன:
பாலி கேட்கள் அனைத்தும் ஒரே ஒரு பெரிய எழுத்து ("I", "X", "Y", "Z") மட்டுமே உள்ளன
அளவீட்டு பாலி கேட்கள் (அதாவது சுழற்சிகள்) "R" ("RX", "RY", "RZ") என்ற எழுத்துக்கு முன்வரும்
கட்டுப்படுத்தப்பட்ட பதிப்பு,"C" ("CX", "CRX", "CCX") என்ற பேரெழுத்துக்கு முன்உள்ளது
கேட்ஸ் அவர்களின் செயலுக்கு ஏற்ப பெயரிடப்பட்டுள்ளன, அவற்றின் மாற்று பெயர்கள் அல்ல (
`CCX, notToffoli)
பழைய பெயர்கள் நீக்கப்பட்டன, எதிர்கால வெளியீட்டில் அவை அகற்றப்படும். இது பழைய மற்றும் புதிய வகுப்பு, பெயர் பண்புக்கூறு மற்றும் முறைகளைக் காட்டும் மாற்றங்களின் பட்டியல். ஒரு புதிய நெடுவரிசை காலியாக இருந்தால், அதற்கு எந்த மாற்றமும் இல்லை.
Table 2 கேட் பெயர் மாற்றங்கள்¶ பழைய வகுப்பு
புதிய வகுப்பு
பழைய பெயர் பண்பு
புதிய பெயர் பண்பு
பழையது:class: qiskit.circuit.QuantumCircuit முறை
புதியது:class: qiskit.circuit.QuantumCircuit முறை
ToffoliGateCCXGateccxCrxGateCRXGatecrxCryGateCRYGatecryCrzGateCRZGatecrzFredkinGateCSwapGatecswapCu1GateCU1Gatecu1Cu3GateCU3Gatecu3CnotGateCXGatecxCyGateCYGatecyCzGateCZGateczDiagGateDiagonalGatediagdiagonaldiag_gateIdGateIGateididenIsometryisoisometryisometry()andiso()UCGUCGatemultiplexerucgUCRotUCPauliRotGateUCXUCRXGateucrotXucrxucxUCYUCRYGateucrotyucryucyUCZUCRZGateucrotzucrzuczசெயல்பாட்டிற்கான குவார்க்
period:func: ~ qiskit.pulse.pulse_lib.square ,:func:` ~ qiskit.pulse.pulse_lib.sawtooth`, மற்றும்:func: ~ qiskit.pulse.pulse_lib. முக்கோணம் in :mod: qiskit.pulse.pulse_lib இப்போது நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் இப்போது அதிர்வெண்ணை அமைக்கfreqகுவார்க்கைப் பயன்படுத்த வேண்டும்.`` DAGCircuit.compose_back () `` மற்றும் `` DAGCircuit.extend_back () `` முறைகள் நீக்கப்பட்டன, அவை எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள்:meth: qiskit.dagcircuit.DAGCircuit.compose முறையைப் பயன்படுத்த வேண்டும், இது அதே செயல்பாட்டை வழங்கும் மிகவும் பொதுவான மற்றும் நெகிழ்வான முறையாகும்.
வகுப்பின்
callbackகுவார்க் :class: qiskit.transpiler.PassManager வகுப்பின் கட்டமைப்பாளர் நீக்கப்பட்டார், மேலும் இது எதிர்கால வெளியீட்டில் அகற்றப்படும். உருவாக்கத்தின் போது அதை பொருள் மட்டத்தில் அமைப்பதற்கு பதிலாக, இப்போது :meth: qiskit.transpiler.PassManager.run முறையில் ஒரு குவார்க் அளவுருவாக அமைக்க வேண்டும்.`` N_qubits`` மற்றும் `` numberofqubits`` சொற்கள் டெர்ரா முழுவதும் நீக்கப்பட்டன, அதற்கு பதிலாக `` num_qubits`` மாற்றப்படுகின்றன. எதிர்கால வெளியீட்டில் பழைய பெயர்கள் அகற்றப்படும். இந்த மாற்றத்தால் பாதிக்கப்பட்ட பொருள்கள் கீழே பட்டியலிடப்பட்டுள்ளன:
Table 3 புதிய முறைகள்¶ வகுப்பு
பழைய முறை
புதிய முறைகள்
`` n_qubits
: வகுப்பு: `~ qiskit.quantum_info.Pauli
qubits இன் எண்ணிக்கை
Table 4 புதிய வாதங்கள்¶ செயல்கூறு
பழைய ஆர்குமென்ட்
புது ஆர்குமென்ட்
`` n_qubits
` ` num_qubits ` `
MSGaten_qubit` ` num_qubits ` `
`` Qiskit.quantum_info.synthesis.euler_angles_1q`` செயல்பாடு இப்போது நீக்கப்பட்டது. இது:class: qiskit.quantum_info.OneQubitEulerDecomposer வகுப்பால் முறியடிக்கப்பட்டுள்ளது, இது
OneQubitEulerDecomposer().angles(mat)
'pass_manager' kwarg ':func:'qiskit.compiler.transpile' நீக்கப்பட்டது மற்றும் ஒரு எதிர்கால வெளியீட்டில் நீக்கப்படும். ஒரு தனிப்பயன் :class:'~qiskit.transpiler.PassManager' ஒரு விருப்ப ஒரு சுற்று டிரான்ஸ்பைலர் செய்ய விருப்பமான வழி நகரும் ':meth:'~qiskit.transpiler.PassManager.run' முறை பயன்படுத்த வேண்டும் 'PassManager' பொருள்.
':func:'qiskit.quantum_info.radom_state' செயல்பாடு நீக்கப்பட்டது மற்றும் ஒரு எதிர்கால வெளியீட்டில் நீக்கப்படும். அதற்கு பதிலாக நீங்கள் :func:'qiskit.quantum_info.random_statevector' function ஐ பயன்படுத்த வேண்டும்.
"கூட்டு", "கழித்தல்", மற்றும் "பெருக்கல்" முறைகள் :class:"qiskit.quantum_info. statevector' மற்றும் :class:'qiskit.quantum_info. DensityMatrix ' வகுப்புகள் deprecated மற்றும் ஒரு எதிர்கால வெளியீட்டில் நீக்கப்படும். அதற்கு பதிலாக நீங்கள் "+'', "-'', "*" பைனரி ஆப்பரேட்டர்களை பயன்படுத்த வேண்டும்.
நீக்குகிறது:meth: qiskit.quantum_info.Statevector.to_counts ,:meth:` qiskit.quantum_info.DensityMatrix.to_counts`, மற்றும்:func: qiskit.quantum_info.counts.state_to_counts. இந்த செயல்பாடுகளை வர்க்க முறைகள் மீறுகின்றன:meth: qiskit.quantum_info.Statevector.probilities_dict மற்றும்:meth:` qiskit.quantum_info.DensityMatrix.probilities_dict`.
: py:class: ~ qiskit.pulse.pulse_lib.SamplePulse மற்றும்: py: class:` ~ qiskit.pulse.pulse_lib.ParametricPulse’s (எ.கா. `` Gaussian``) இப்போது துணைப்பிரிவு: py: class: ~ qiskit.pulse.pulse_lib.Pulse மற்றும் அவை:mod: qiskit.pulse.pulse_lib க்கு நகர்த்தப்பட்டுள்ளன. `` pulse.commands`` வழியாக முந்தைய பாதை நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும்.
DelayInstructionநீக்கப்பட்டு, அதற்கு பதிலாக: py: class: ~ qiskit.pulse.instruction.Delay. இந்த புதிய அறிவுறுத்தல் முந்தைய `` Command`` `` Delay`` மீது எடுக்கப்பட்டுள்ளது. இடம்பெயர்வு முறைDelay(<duration>)(<channel>) -> Delay(<duration>, <channel>) DelayInstruction(Delay(<duration>), <channel>) -> Delay(<duration>, <channel>)
நீக்குதல் காலம் முடியும் வரை, ஒரு சேனலில் ஒரு கட்டளையை அழைப்பதற்கான முந்தைய `` Delay`` தொடரியல் ஆதரிக்கப்படும்:
Delay(<phase>)(<channel>)
புதிய `` Delay`` அறிவுறுத்தல் `` command`` பண்புக்கூறுக்கு ஆதரவளிக்காது.
FrameChangeமற்றும் `` FrameChangeInstruction`` ஆகியவை நீக்கப்பட்டன, அதற்கு பதிலாக: பை:class: ~ qiskit.pulse.instructions.ShiftPhase. மாற்றங்கள்FrameChange(<phase>)(<channel>) -> ShiftPhase(<phase>, <channel>) FrameChangeInstruction(FrameChange(<phase>), <channel>) -> ShiftPhase(<phase>, <channel>)
நீக்குதல் காலம் முடியும் வரை, ஒரு சேனலில் ஒரு கட்டளையை அழைக்கும் முந்தைய பிரேம் சேஞ்ச் தொடரியல் ஆதரிக்கப்படும்:
ShiftPhase(<phase>)(<channel>)
Py:class: ~ qiskit.pulse.pulse_lib.SamplePulse மற்றும்: py: class:` ~ qiskit.pulse.pulse_lib.ParametricPulse` இன்
callமுறை நீக்கப்பட்டது. இடம்பெயர்வு பின்வருமாறுPulse(<*args>)(<channel>) -> Play(Pulse(*args), <channel>)
`` AcquireInstruction`` நீக்கப்பட்டு, அதற்கு பதிலாக: py: class: ~ qiskit.pulse.instructions.Acquire. மாற்றங்கள்
Acquire(<duration>)(<**channels>) -> Acquire(<duration>, <**channels>) AcquireInstruction(Acquire(<duration>), <**channels>) -> Acquire(<duration>, <**channels>)
நீக்குதல் காலம் முடியும் வரை, ஒரு சேனலில் கட்டளையை அழைப்பதற்கான முந்தைய கையகப்படுத்தல் தொடரியல் ஆதரிக்கப்படும்:
Acquire(<duration>)(<**channels>)
பிழை திருத்தங்கள்¶
The
BarrierBeforeFinalMeasurementstranspiler pass, included in the preset transpiler levels when targeting a physical device, previously inserted a barrier across only measured qubits. In some cases, this allowed the transpiler to insert a swap after a measure operation, rendering the circuit invalid for current devices. The pass has been updated so that the inserted barrier will span all qubits on the device. Fixes #3937ஒரு: வகுப்பை நீட்டிக்கும்போது:class: ~ qiskit.circuit.QuantumCircuit நிகழ்வு (நீட்டிப்பு) மற்றொரு சுற்று (நீட்டிப்பு) உடன், சுற்று குறிப்பு வழியாக எடுக்கப்படுகிறது. ஒரு சுற்று தன்னுடன் நீட்டிக்கப்பட்டால், அது நீட்டிப்பு மற்றும் நீட்டிப்பு ஒரே மாதிரியாக இருப்பதால் எல்லையற்ற வளையத்திற்கு வழிவகுக்கிறது. நீட்டிப்பு நீட்டிக்கப்பட்ட அதே பொருளாக இருந்தால் நீட்டிப்பை நகலெடுப்பதன் மூலம் இந்த பிழை தீர்க்கப்பட்டது. திருத்தங்கள் # 3811 <https://github.com/Qiskit/qiskit-terra/issues/3811> _
ஒரு வழக்கை இதில் சரிசெய்கிறது:meth: qiskit.result.Result.get_counts, அங்கு ஒரு பெயர் இல்லாமல் ஒரு அட்டவணையாக சோதனை தொடங்கப்பட்டால் காலாவதியாகும் முடிவுகளைக் குறிப்பிட முடியாது. திருத்தங்கள் # 2753 <https://github.com/Qiskit/qiskit-terra/issues/2753> _
முன்னதாக, மாற்றுவது:class: ~ qiskit.circuit.Parameter பொருள்கள் ஒரு சுற்றுவட்டத்தை சிதைப்பதற்கு முன் புதிய அளவுரு பொருள்களைக் கொண்ட ஒரு சுற்றுவட்டத்தில் உள்ள பொருள்கள், சிதைந்த வாயில்களில் மாற்றாக மதிப்புகள் சரியாக மாற்றப்படாமல் போகும். பிணைப்பு மற்றும் சிதைவு எந்த வரிசையிலும் ஏற்படக்கூடிய வகையில் இது தீர்க்கப்பட்டுள்ளது.
The matplotlib output backend for the
qiskit.visualization.circuit_drawer()function andqiskit.circuit.QuantumCircuit.draw()method drawer has been fixed to renderCU1Gategates correctly. Fixes #3684இதில் உள்ள பிழை:meth: qiskit.circuit.QuantumCircuit.from_qasm_str மற்றும்:meth:` qiskit.circuit.QuantumCircuit.from_qasm_file` வரையறுக்கப்பட்ட தனிப்பயன் வாயில்களுடன் QASM ஐ ஏற்றும்போது சரி செய்யப்பட்டது. இப்போது, இந்த QASM ஐ ஏற்றுகிறது
OPENQASM 2.0; include "qelib1.inc"; gate rinv q {sdg q; h q; sdg q; h q; } qreg q[1]; rinv q[0];
பின்வரும் சுற்றுக்கு சமம்:
rinv_q = QuantumRegister(1, name='q') rinv_gate = QuantumCircuit(rinv_q, name='rinv') rinv_gate.sdg(rinv_q) rinv_gate.h(rinv_q) rinv_gate.sdg(rinv_q) rinv_gate.h(rinv_q) rinv = rinv_gate.to_instruction() qr = QuantumRegister(1, name='q') expected = QuantumCircuit(qr, name='circuit') expected.append(rinv, [qr[0]])
# 1566 <https://github.com/Qiskit/qiskit-terra/issues/1566> _ திருத்தங்கள்
பட்டியல் அளவுரு மதிப்புகளைக் கொண்டிருக்க குவாண்டம் சுற்று வழிமுறைகளை அனுமதிக்கவும். எதிர்பார்ப்பு மதிப்பு ஸ்னாப்ஷாட் அளவுருக்களுக்கு இது ஏரில் பயன்படுத்தப்படுகிறது ``params = [[1.0, 'I'], [1.0, 'X']]] `` இதற்கு:math: langle I + X rangle.
முன்னதாக, கலப்பு வாயில்களைக் கொண்ட சுற்றுகளுக்கு (:meth: qiskit.circuit.QuantumCircuit.to_gate அல்லது:meth:` qiskit.circuit.QuantumCircuit.to_instruction` அல்லது அவற்றுடன் தொடர்புடைய மாற்றிகள்), சுற்றுக்கு ஒன்றுக்கு மேற்பட்ட முறை பிணைக்க முயற்சிக்கும் மாற்றப்படும் போது அனைத்து சுற்றுகளுக்கும் முதல் பிணைப்பு மதிப்பு மட்டுமே பயன்படுத்தப்படும். இது தீர்க்கப்பட்டுள்ளது, இதனால் அடுத்தடுத்த பிணைப்புகளுக்கு வழங்கப்பட்ட மதிப்புகள் சரியாக மதிக்கப்படுகின்றன.
பிற குறிப்புகள்¶
Qasm மற்றும் துடிப்பு qobj வகுப்புகள்:
இருந்து:mod: qiskit.qobj அனைத்தும் மார்ஸ்மெல்லோ நூலகத்தைப் பயன்படுத்தாமல் மறுசீரமைக்கப்பட்டுள்ளன. இந்த புதிய செயலாக்கங்கள் டிராப்-இன் மாற்றாக வடிவமைக்கப்பட்டுள்ளன (மேம்படுத்தல் வெளியீட்டுக் குறிப்புகளில் குறிப்பிடப்பட்டுள்ளதைத் தவிர) ஆனால் மார்ஷ்மெல்லோவிலிருந்து பெறப்பட்ட பிரத்தியேகங்கள் செயல்படாது. ஏதேனும் பொருந்தாத தன்மைகளுக்கு சிக்கல்களைத் தாக்கல் செய்க.
Aer 0.5.0¶
சேர்க்கப்பட்டது¶
டெர்ரா மூலைவிட்ட வாயிலுக்கு ஆதரவைச் சேர்க்கவும்
அளவுருவாக்கப்பட்ட qobj க்கு ஆதரவைச் சேர்க்கவும்
சரி செய்யப்பட்டது¶
ராஸ்பெர்ரி Pi இல் லினக்ஸிற்கான போஸ்ட்ஃபிக்ஸ் சேர்க்கப்பட்டது
Qobj இலிருந்து எண்ணற்ற வரிசை உள்ளீடுகளைக் கையாளவும்
Ignis 0.3.0¶
சேர்க்கப்பட்டது¶
API ஆவணங்கள்
CNOT-Dihedral சீரற்ற தரப்படுத்தல்
சத்தமில்லாத சாதனங்களின் வெளியீட்டு அங்கீகாரத்திற்கான அங்கீகார தொகுதி
ஒற்றை குவிட்டுகளுக்கான துடிப்பு அளவுத்திருத்தங்கள்
துடிப்பு பாகுபாடு காண்பிப்பவர்
சிக்கலான சரிபார்ப்பு சுற்றுகள்
ஒற்றை-குவிட் கேட் செட்களுக்கான கேட்செட் டோமோகிராபி
தற்போக்கான இலக்குக் குறி பயன்பாட்டு செயல்பாடுகளை சேர்க்கிறது "calculate_1q_epg", "calculate_2q_epg" செயல்பாடுகளை கிளிஃபோர்ட் ஒன்றுக்கு ஒரு பிழை யிலிருந்து ஒரு கேட் ஒன்றுக்கு 1 மற்றும் 2-qubit பிழை கணக்கிட
தற்போக்காக பெஞ்ச்மார்க்கிங் பயன்பாட்டு செயல்பாடுகளை சேர்க்கிறது "calculate_1q_epc", "calculate_2q_epc" ஒவ்வொரு கேட் ஒரு கிளிஃபோர்ட் பிழை யிலிருந்து 1 மற்றும் 2-qubit பிழை கணக்கிடுவதற்கு
மாற்றப்பட்டது¶
வரைவி qubits க்கான முழு எண் லேபல்களை ஆதரிக்கவும்
அளவீட்டு பிழை குறைப்பிக்கான முழு எண் லேபல்களை ஆதரிக்கவும்
நீக்கப்படும்¶
"twoQ_clifford_error" செயல்பாட்டை க்டுகிறது. அதற்கு பதிலாக 'calculate_2q_epc' பயன்படுத்தவும்.
பைத்தான் 3.5 qiskit-ignis இல் ஆதரவு நீக்கப்பட்டுள்ளது. பதிப்பு க்கான மேல்நீரோட்ட பைதான் சமூகத்தின் வாழ்க்கை தேதி, இது 09/13/2020 இல் ஆதரவு அகற்றப்படும்.
அக்வா 0.6.5¶
எந்த மாற்றமும் இல்லை
IBM Q வழங்குபவர் 0.6.0¶
எந்த மாற்றமும் இல்லை
Qiskit 0.17.0¶
டெரா 0.12.0¶
எந்த மாற்றமும் இல்லை
ஏர் 0.4.1¶
எந்த மாற்றமும் இல்லை
பற்றவைப்பு 0.2.0¶
எந்த மாற்றமும் இல்லை
அக்வா 0.6.5¶
எந்த மாற்றமும் இல்லை
IBM Q வழங்குபவர் 0.6.0¶
புதிய அம்சங்கள்¶
மூன்று புதிய விதிவிலக்குகள் உள்ளன: "VisualizationError", "VisualizationValueError", மற்றும் "VisualizationTypeError". ஒரு விதிவிலக்கு எழுப்பப்படும் போது இவை இப்போது காட்சிப்படுத்தல் தொகுதிகளில் பயன்படுத்தப்படுகின்றன.
நீங்கள் இப்போது பதிவெடுத்தல் அளவை அமைத்து முறையே "QSIKIT_IBMQ_PROVIDER_LOG_LEVEL" மற்றும் "QISKIT_IBMQ_PROVIDER_LOG_FILE" சூழல் மாறிகளைப் பயன்படுத்தி ஒரு பதிவு கோப்பை குறிப்பிடலாம். குறிப்பின் பெயர் "qiskit.providers.ibmq" ஆகும்.
:class:'qiskit.providers.ibmq.job.IBMQJob' இப்போது ஒரு புதிய முறையை க்கொண்டிருக்கிறது :meth:'~qiskit.providers.ibmq.job.IBMQJob.scheduling_mode' என்று ஒரு புதிய முறை உள்ளது, இது வேலை உள்ளது.
"qiskit-iqx-tutorials" இல் பயன்படுத்தப்படும் IQX தொடர்பான பயிற்சிகள் இப்போது "qiskit-ibmq-provider" இல் உள்ளன.
மாற்றப்பட்டது¶
:meth:'qiskit.providers.ibmq.IBMQBackend.jobs' இப்போது ஒரு புதிய பூலியன் அளவுரு "descending" ஏற்கிறது, இது இறங்கு அல்லது ஏறுவரிசையில் வேலைகள் திரும்ப வேண்டுமா என்பதைக் குறிக்க பயன்படுத்தப்படலாம்.
:class:'qiskit.providers.ibmq.managed.IBMQJobManager' இப்போது வேலை வரம்பை ப்பார்த்து, வரம்பு எட்டப்பட்டால் புதிய பணிகளை சமர்ப்பிக்கும் முன் பழைய வேலைகள் முடிவடையும் வரை காத்திருக்கிறது.
:meth:'qiskit.providers.ibmq.IBMQBackend.status' இப்போது ஒரு எழுப்புகிறது:class:'qiskit.providers.ibmq.IBMQBackendApiProtocolError' நிலையை செல்லுபடியாக்குவதில் சிக்கல் இருந்தால் விதிவிலக்கு.
Qiskit 0.16.0¶
டெரா 0.12.0¶
எந்த மாற்றமும் இல்லை
ஏர் 0.4.0¶
எந்த மாற்றமும் இல்லை
பற்றவைப்பு 0.2.0¶
எந்த மாற்றமும் இல்லை
அக்வா 0.6.4¶
எந்த மாற்றமும் இல்லை
IBM Q வழங்குபவர் 0.5.0¶
புதிய அம்சங்கள்¶
சில காட்சிப்படுத்தல் மற்றும் ஜூபியர் கருவிகள், கேட் /பிழை வரைபடம் மற்றும் பின்நிலை தகவல் உட்பட, "qiskit-terra" இருந்து "qiskit-ibmq-provider" க்கு நகர்த்தப்பட்டுள்ளன. அவர்கள் இப்போது :mod:'qiskit.providers.ibmq.jupyter' மற்றும் ':mod:'qiskit.providers.ibmq.visualization' கீழ் உள்ளன. கூடுதலாக, பணி மற்றும் பின்நிலை தகவலை வழங்கும் டாஷ்போர்டை பெற நீங்கள் இப்போது '%iqx_dashboard' ஐ ப் பயன்படுத்தலாம்.
மாற்றப்பட்டது¶
JSON பண்புவிவரம் சரிபார்த்தல் இனி Qobj பொருள்களில் முன்னிருப்பாக இயங்காது :meth:'qiskit.providers.ibmq.IBMQBackend.run'. இது 'ரன்()' முறை யின் செயலாக்கத்தை கணிசமாக வேகப்படுத்துகிறது. Qobj பொருள்கள் சேவையகபக்கத்தில் இன்னும் செல்லுபடியாக்கப்படுகின்றன, மேலும் செல்லுபடியாகாத Qobjs தொடர்ந்து விதிவிலக்குகளை உயர்த்தும். அக சரிபார்த்தலை கட்டாயப்படுத்த, "validate_qobj=true" என்பதை நீங்கள் "run()" என்று அமைக்கும்போது அமைக்கவும்.
Qiskit 0.15.0¶
டெரா 0.12.0¶
முன்னுரை¶
0.12.0 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழைத்திருத்தங்கள் உள்ளன. இந்த வெளியீட்டின் மிகப்பெரிய மாற்றம் OpenPulse க்கு parametric பருப்புகளுக்கான ஆதரவு கூடுதலாக உள்ளது. இவை ஒரு நாடித்துடிப்பை விவரிக்க மாதிரி ப்புள்ளிகளை விட அளவுருக்களை எடுக்கும் பல்ஸ் கட்டளைகள் ஆகும். 0.12.0 என்பது பைத்தான் 3.8 க்கான ஆதரவை உள்ளடக்கிய முதல் வெளியீடு ஆகும். இது பைத்தான் 3.5 ஆதரவு க்கான தேய்மானத்தின் தொடக்கத்தையும் குறிக்கிறது, இது மேல்நீரோட்ட சமூகம் அதை ஆதரிப்பதை நிறுத்தும்போது அகற்றப்படும்.
புதிய அம்சங்கள்¶
":class:"qiskit.transpiler.passes.CSPLayout" என்ற இரண்டு புதிய அளவுருக்கள் கொண்ட "call_limit" மற்றும் "time_limit" என்ற இரண்டு புதிய அளவுருக்கள் நீட்டிக்கப்பட்டுள்ளது. இந்த விருப்பங்கள் பாஸ் எவ்வளவு நேரம் இயங்கும் என்பதை வரம்பிட அனுமதிக்கின்றன. "call_limit" என்ற விருப்பம், பின்தொடர்தல் தீர்வில் உள்ள திரும்பவரும் செயல்பாடு அழைக்கப்படவேண்டிய எண்ணிக்கையை வரையறுக்கிறது. இதேபோல், "time_limit" என்பது தீர்வி இயங்க எவ்வளவு காலம் (விநாடிகளில்) அனுமதிக்கப்படும் என்பதை வரையறுக்கிறது. முன்னிருப்புகள் முறையே "1000" அழைப்புகள் மற்றும் "10" விநாடிகள் ஆகும்.
qiskit.pulse.Acquirecan now be applied to a single qubit. This makes pulse programming more consistent and easier to reason about, as now all operations apply to a single channel. For example:acquire = Acquire(duration=10) schedule = Schedule() schedule.insert(60, acquire(AcquireChannel(0), MemorySlot(0), RegisterSlot(0))) schedule.insert(60, acquire(AcquireChannel(1), MemorySlot(1), RegisterSlot(1)))
ஒரு புதிய முறை ":meth:'qiskit.transpiler.CouplingMap.draw' சேர்க்கப்பட்டுள்ளது :class:'qiskit.transpiler.CouplingMap' coupling map graph. உதாரணமாக:
from qiskit.transpiler import CouplingMap coupling_map = CouplingMap( [[0, 1], [1, 0], [1, 2], [1, 3], [2, 1], [3, 1], [3, 4], [4, 3]]) coupling_map.draw()
திறந்தவெளிக்கு பாரமெட்ரிக் பருப்பு கள் சேர்க்கப்பட்டுள்ளன. இவை, பின்முனையால் அளபுருக்கள் மற்றும் புரிந்து கொள்ளக்கூடிய துடிப்பு கட்டளைகள் ஆகும். தன்னிச்சையான துடிப்பு வடிவங்கள் இன்னும் SamplePulse கட்டளை யால் ஆதரிக்கப்படுகின்றன. புதிய ஆதரவு துடிப்பு வகுப்புகள்:
qiskit.pulse.ConstantPulse
வேறு எந்த பல்ஸ் கட்டளை யும் போலவே அவையும் பயன்படுத்தப்படலாம். ஒரு உதாரணம்:
from qiskit.pulse import (Schedule, Gaussian, Drag, ConstantPulse, GaussianSquare) sched = Schedule(name='parametric_demo') sched += Gaussian(duration=25, sigma=4, amp=0.5j)(DriveChannel(0)) sched += Drag(duration=25, amp=0.1, sigma=5, beta=4)(DriveChannel(1)) sched += ConstantPulse(duration=25, amp=0.3+0.1j)(DriveChannel(1)) sched += GaussianSquare(duration=1500, amp=0.2, sigma=8, width=140)(MeasureChannel(0)) << sched.duration
இதன் விளைவாக அட்டவணை :mod:'qiskit.pulse.pulse_lib'ஐ பயன்படுத்தி கட்டப்பட்ட SamplePulse அட்டவணையைப் போலவே இருக்கும், இருப்பினும், பின்முனையால் அலைவடிவம் மாதிரி செய்யப்படும். :meth:'qiskit.pulse.Schedule.draw' என்ற முறையை இன்றும் வழக்கம் போல் பயன்படுத்த முடியும். எனினும், கட்டளை ஒரு ":meth:'qiskit.pulse.ParametricPulse.get_sample_pulse" முறை ஒரு "மாதிரிதுடிப்பு" மாற்றப்படுகிறது, எனவே காட்டப்படும் துடிப்பு பின்இறுதியில் என்று அதே வழியில் தொடர்ச்சியான செயல்பாடு மாதிரி இல்லை.
இந்த அம்சம் எந்த பின்புலத்திற்கும் பல்ஸ் நிரல்களை உருவாக்க பயன்படுத்தலாம், ஆனால் பின்முனை parametric pulses ஐ ஆதரிக்கவில்லை என்றால், பருப்பு வகைகள் "SamplePulse" பொருள்களாக மாற்றப்படும். அவற்றை ஆதரிக்கும் பின்முனைகள் பின்வரும் புதிய பண்புக்கூறை கொண்டிருக்கும்:
backend.configuration().parametric_pulses: List[str] # e.g. ['gaussian', 'drag', 'constant']
பின்முனை, Qiskit வரையறுக்கப்பட்ட அனைத்து பாராமெட்ரிக் துடிப்புகளையும் ஆதரிக்க வேண்டிய அவசியமில்லை என்பதை நினைவில் கொள்ளவும்.
பின்பக்கம் அளவுருபல்ஸ்கள் ஆதரிக்கிறது, மற்றும் துடிப்பு அட்டவணை அவர்களுடன் கட்டப்பட்ட போது, கூடியிருந்த Qobj கணிசமாக சிறியது. அளவுரு பல்ஸ் மூலம் கட்டப்பட்ட ஒரு PulseQobj அளவு மட்டுமே அறிவுறுத்தல்கள் எண்ணிக்கை பொறுத்தது, அதேசமயம் இல்லையெனில் கட்டப்பட்ட ஒரு PulseQobj அளவு அறிவுறுத்தல்கள் கால (ஒவ்வொரு மாதிரி ஒரு மதிப்பு குறிப்பிடவேண்டும் என்பதால்) வளரும்.
பயன்பாட்டு செயல்பாடுகளை ச்சேர்த்த, :func:'qiskit.scheduler.measure' மற்றும் ':func:'qiskit.scheduler.measure_all' 'qiskit.scheduler' module. இந்த செயல்பாடுகள் OpenPulse ஐ பயன்படுத்தி qubis அளக்கும் ஒரு :class:'qiskit.pulse.Schedule" object ஐ திருப்பும். உதாரணமாக:
from qiskit.scheduler import measure, measure_all measure_q0_schedule = measure(qubits=[0], backend=backend) measure_all_schedule = measure_all(backend) measure_custom_schedule = measure(qubits=[0], inst_map=backend.defaults().instruction_schedule_map, meas_map=[[0]], qubit_mem_slots={0: 1})
பல்ஸ் :class:` qiskit.pulse.Schedule ` பொருள்கள் இப்போது எளிமையான செயல்திறன் முறையான பைத்தான் வெளிப்பாடுகள் இருக்க வேண்டும்.
The :class:'qiskit.circuit.QuantumCircuit' methods :meth:'qiskit.circuit.QuantumCircuit.measure_active', :meth:'qiskit.circuit.QuantumCircuit.measure_all', and :meth:'qiskit.circuit.QuantumCircuit.remove_final_measurements' now a addition kwarg 'inplace'. "inplace" "False" என அமைக்கப்படும்போது, செயல்கூறு சுற்றுமாற்றப்பட்ட copy ஐ திருப்பும். இது இயல்புநிலை நடத்தையில் இருந்து வேறுபட்டது, இது சர்க்யூட் ஆப்ஜக்டை உள்ள-இடத்தில் மாற்றி விட்டு எதையும் திருப்பி விடும்.
அடிப்படை க்யூப்ட் இணைப்பு வரைபடங்கள் கொண்ட பொருட்களை உருவாக்கபல புதிய கன்ஸ்ட்ரக்டர் முறைகள் :class:'qiskit.transpiler.CouplingMap' வகுப்பில் சேர்க்கப்பட்டன. புதிய கட்டமைப்பான் முறைகள்:
எடுத்துக்காட்டாக, ஒரு நேரியல் சங்கிலியில் இணைக்கப்பட்ட 5 குவிட்டுகளின் இணைப்பு வரைபடத்தைப் பெற புதிய கட்டமைப்பாளர்களைப் பயன்படுத்த நீங்கள் இப்போது இயக்கலாம்:
from qiskit.transpiler import CouplingMap coupling_map = CouplingMap.from_line(5) coupling_map.draw()
புதிய பாஸை அறிமுகப்படுத்தியது:class: qiskit.transpiler.passes.CrosstalkAdaptiveSchedule. இந்த பாஸ் ஒரு நிரலில் க்ரோஸ்டாக் சத்தத்தின் தாக்கத்தை குறைப்பதை நோக்கமாகக் கொண்டுள்ளது. இது கேட்களை திட்டமிட பின்தளத்தில் இருந்து க்ரோஸ்டாக் குணாதிசய தரவைப் பயன்படுத்துகிறது. ஒரு ஜோடி வாயில்கள் அதிக க்ரோஸ்டாக்கைக் கொண்டிருக்கும்போது, அவை ஒரு தடையைப் பயன்படுத்தி தொடர்கின்றன. அப்பாவியாக வரிசைப்படுத்துதல் தீங்கு விளைவிக்கும், ஏனெனில் இது டிகோஹரன்ஸ் பிழைகள் ஏற்படுகிறது. எனவே, இந்த பாஸ் ஒரு அட்டவணையை கணக்கிட ஒரு SMT தேர்வுமுறை அணுகுமுறையைப் பயன்படுத்துகிறது, இது க்ரோஸ்டாக்கின் தாக்கத்தையும் டிகோஹரன்ஸ் பிழைகளையும் குறைக்கிறது.
பாஸ் உள்ளீடாக எடுத்துக்கொள்கிறது, இது ஏற்கனவே பின்தளத்தில் அனுப்பப்பட்டுள்ளது, அதாவது, சுற்று ப physical தீக வினாடிகளின் அடிப்படையில் வெளிப்படுத்தப்படுகிறது மற்றும் தேவைப்பட்டால் இடமாற்று வாயில்கள் செருகப்பட்டு சி.என்.ஓ.டி.களில் சிதைக்கப்படுகின்றன. இந்த சுற்று மற்றும் க்ரோஸ்டாக் பண்புக்கூறு தரவைப் பயன்படுத்தி, ஒரு புதிய திட்டமிடப்பட்ட சுற்று வெளியீட்டை வெளியிடுவதற்கு Z3 தேர்வுமுறை <https://github.com/Z3Prover/z3> _ பயன்படுத்தப்படுகிறது.
ஒரு சுற்று வட்டத்தில் பாஸைப் பயன்படுத்த:
dag = circuit_to_dag(circ) pass_ = CrosstalkAdaptiveSchedule(backend_prop, crosstalk_prop) scheduled_dag = pass_.run(dag) scheduled_circ = dag_to_circuit(scheduled_dag)
`` backend_prop`` என்பது ஒரு:class: qiskit.providers.models.BackendProperties இலக்கு பின்தளத்தில் பொருள். `` crosstalk_prop`` என்பது நிபந்தனை பிழை விகிதங்களைக் குறிப்பிடும் ஒரு கட்டளை. `` G1`` மற்றும் `` g2`` ஆகிய இரண்டு வாயில்களுக்கு, `` crosstalk_prop [g1] [g2] `` `` g1`` மற்றும் `` g2`` போது `` g1`` இன் நிபந்தனை பிழை விகிதத்தைக் குறிப்பிடுகிறது ஒரே நேரத்தில் செயல்படுத்தப்படுகிறது. கிஸ்கிட்-இக்னிஸின் எதிர்கால வெளியீட்டில் `` crosstalk_prop`` ஐ உருவாக்குவதற்கான ஒரு முறை சேர்க்கப்படும். அதுவரை நீங்கள் ஏற்கனவே உங்கள் சாதனத்தின் க்ரோஸ்டாக் பண்புகளை அறிந்து கொள்ள வேண்டும், அல்லது உங்கள் சொந்த சாதன குணாதிசய சோதனைகளை கைமுறையாக எழுத வேண்டும்.பின்நிலை.
தேர்வுமுறை நிலை 1 க்கான முன்னமைக்கப்பட்ட பாஸ் மேலாளரில் ,:func: qiskit.transpiler.preset_passmanagers.level_1_pass_manager if :class:` qiskit.transpiler.passes.TrivialLayout` தளவமைப்பு பாஸ் ஒரு குறிப்பிட்ட சுற்றுக்கு சரியான பொருத்தம் அல்ல, பின்னர்:class: qiskit.transpiler.passes.DenseLayout தளவமைப்பு பாஸ் அதற்கு பதிலாக பயன்படுத்தப்படுகிறது.
ஒரு புதிய சுருக்க முறையைச் சேர்த்தது:meth: qiskit.quantum_info.Operator.dot என்பது சுருக்கமான``BaseOperator`` வகுப்பிற்கு, எனவே அந்த சுருக்க வகுப்பின் அனைத்து செயலாக்கங்களுக்கும் இது சேர்க்கப்பட்டுள்ளது, இதில்:class:` qiskit.quantum_info.Operator` மற்றும் `` QuantumChannel`` (எ.கா., :class: qiskit.quantum_info.Choi) பொருள்கள். இந்த முறை சரியான ஆபரேட்டர் பெருக்கத்தை `` a.dot (b)
:math: `= a \ cdot b`. இது ஆபரேட்டரை அழைப்பதற்கு சமம்:meth: `qiskit.quantum_info.Operator.compose` முறை குவார்க்குடன்` `front`True` என அமைக்கப்பட்டுள்ளது.சேர்க்கப்பட்டது:func: qiskit.quantum_info.average_gate_fidelity மற்றும் :func:` qiskit.quantum_info.gate_error` உடன் செயல்படும்:mod: qiskit.quantum_info தொகுதி:class:` qiskit.quantum_info.Operator மற்றும்
QuantumChannel(எ.கா ,:class: qiskit.quantum_info.Choi) பொருள்கள்.Added the
qiskit.quantum_info.partial_trace()function to theqiskit.quantum_infothat works withqiskit.quantum_info.Statevectorandqiskit.quantum_info.DensityMatrixquantum state classes. For example:from qiskit.quantum_info.states import Statevector from qiskit.quantum_info.states import DensityMatrix from qiskit.quantum_info.states import partial_trace psi = Statevector.from_label('10+') partial_trace(psi, [0, 1]) rho = DensityMatrix.from_label('10+') partial_trace(rho, [0, 1])
போது :meth:'quiskit.circuit.draw' or :func:'qiskit.visualization.circuit_drawer' is calling with the 'with_layout' kwarg set True (the default) the output visualization will display the physical qubits to blistinkto theviror qubits from the virtual qubits.
உதாரணத்திற்கு:
from qiskit import QuantumCircuit from qiskit import transpile from qiskit.test.mock import FakeVigo qc = QuantumCircuit(3) qc.h(0) qc.cx(0, 1) qc.cx(0, 2) transpiled_qc = transpile(qc, FakeVigo()) transpiled_qc.draw(output='mpl')
புதிய மாநில அளவீட்டு செயல்பாடுகளை:mod: qiskit.quantum_info தொகுதிக்குச் சேர்த்தது ::func:` qiskit.quantum_info.entropy` ,:func: qiskit.quantum_info.mutual_information ,:func:` qiskit.quantum_info.concurrence`, மற்றும்:func: qiskit.quantum_info.entanglement_of_formation. இந்த செயல்பாடுகள்:class: qiskit.quantum_info.Statevector மற்றும்:class:` qiskit.quantum_info.DensityMatrix` வகுப்புகளுடன் செயல்படுகின்றன.
ஒற்றை-குவிட் வாயில்களுக்கான சிதைவு முறைகள்:class: qiskit.quantum_info.synthesis.one_qubit_decompose.OneQubitEulerDecomposer இப்போது விரிவாக்கப்பட்டுள்ளது,` ZZZ` அடிப்படையையும் உள்ளடக்கியது, இது Z, X, இசட் அச்சு. இதன் பொருள் இப்போது ஒரு பொதுவான 2x2 ஆபரேட்டரை பின்வரும் தளங்களாக சிதைக்கலாம்: `` U3``, `` U1X``, `` ZYZ``, `` ZXZ``, `` XYX``, `` ZXZ``. .
தெரிந்த சிக்கல்கள்¶
Running functions that use
qiskit.tools.parallel_map()(for exampleqiskit.execute.execute(),qiskit.compiler.transpile(), andqiskit.transpiler.PassManager.run()) may not work when called from a script running outside of aif __name__ == '__main__':block when using Python 3.8 on MacOS. Other environments are unaffected by this issue. This is due to changes in how parallel processes are launched by Python 3.8 on MacOS. IfRuntimeErrororAttributeErrorare raised by scripts that are directly callingparallel_map()or when calling a function that uses it internally with Python 3.8 on MacOS embedding the script calls insideif __name__ == '__main__':should workaround the issue. For example:from qiskit import QuantumCircuit, QiskitError from qiskit import execute, BasicAer qc1 = QuantumCircuit(2, 2) qc1.h(0) qc1.cx(0, 1) qc1.measure([0,1], [0,1]) # making another circuit: superpositions qc2 = QuantumCircuit(2, 2) qc2.h([0,1]) qc2.measure([0,1], [0,1]) execute([qc1, qc2], BasicAer.get_backend('qasm_simulator'))
:: க்கு மாற்றப்பட வேண்டும்:
from qiskit import QuantumCircuit, QiskitError from qiskit import execute, BasicAer def main(): qc1 = QuantumCircuit(2, 2) qc1.h(0) qc1.cx(0, 1) qc1.measure([0,1], [0,1]) # making another circuit: superpositions qc2 = QuantumCircuit(2, 2) qc2.h([0,1]) qc2.measure([0,1], [0,1]) execute([qc1, qc2], BasicAer.get_backend('qasm_simulator')) if __name__ == '__main__': main()
macOS இல் பைதான் 3.8 உடன் பிழைகள் ஏற்பட்டால்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
பல்ஸ் பின்தளத்தில் உள்ளமைவு பொருளின் `` rep_time`` அளவுருவின் மதிப்பு இப்போது மைக்ரோ விநாடிகளில் அல்ல, வினாடிகளின் அலகுகளில் உள்ளது. முதல் முறையாக `` PulseBackendConfiguration`` பொருள் துவக்கப்பட்டால், இதைக் குறிக்க பயனருக்கு ஒரு எச்சரிக்கையை எழுப்புகிறது.
இதற்கான `` rep_time`` வாதம்:func: qiskit.compiler.assemble இப்போது மைக்ரோ விநாடிகள் அல்ல, வினாடிகளின் அலகுகளில் ஒரு மதிப்பைப் பெறுகிறது. எல்லாவற்றையும் துடிப்பில் உள்ள அலகுகளை உருவாக்க இது செய்யப்பட்டது. `` Rep_time`` க்கான மதிப்பை நீங்கள் கடந்து வந்தால், இந்த மாற்றத்திற்கான கணக்கை மதிப்பைப் புதுப்பிப்பதை உறுதிசெய்க.
`` base_gate`` சொத்தின் மதிப்பு:class: qiskit.circuit.ControlledGate பொருள்கள் அடிப்படை வாயிலின் வகுப்பிலிருந்து அடிப்படை வாயிலின் வர்க்கத்தின் ஒரு நிகழ்வாக மாற்றப்பட்டுள்ளன.
`` base_gate_name`` இன் சொத்து:class: qiskit.circuit.ControlledGate அகற்றப்பட்டது; பொருளின் மீது `` base_gate.name`` ஐ அணுகுவதன் மூலம் நீங்கள் அடிப்படை வாயிலின் பெயரைப் பெறலாம். உதாரணத்திற்கு:
from qiskit import QuantumCircuit from qiskit.extensions import HGate qc = QuantumCircuit(3) cch_gate = HGate().control(2) base_gate_name = cch_gate.base_gate.name
மாற்றப்பட்டது:class: qiskit.quantum_info.Operator மந்திர முறைகள், இதனால்` __mul__` (இது பைத்தானின் பெருக்கல் செயல்பாட்டால் செயல்படுத்தப்படுகிறது, செயல்பாட்டின் இடது புறம் வரையறுக்கப்பட்டிருந்தால்) வலது மேட்ரிக்ஸ் பெருக்கத்தை செயல்படுத்துகிறது (அதாவது:meth: qiskit.quantum_info.Operator.dot), மற்றும்` __rmul__` (இது இடதுபுறத்தில்` __mul__` வரையறுக்கப்படவில்லை எனில், செயல்பாட்டின் வலது புறத்திலிருந்து பைத்தானின் பெருக்கல் செயல்பாட்டின் மூலம் செயல்படுத்தப்படுகிறது) அளவிடல் பெருக்கத்தை செயல்படுத்துகிறது ( அதாவது:meth: qiskit.quantum_info.Operator.multiply). முன்னதாக இரண்டு முறைகளும் அளவிடுதல் பெருக்கத்தை செயல்படுத்தின.
The second argument of the
qiskit.quantum_info.process_fidelity()function,target, is now optional. If a target unitary is not specified, then process fidelity of the input channel with the identity operator will be returned.qiskit.compiler.assemble()will now respect the configuredmax_shotsvalue for a backend. If a value for theshotskwarg is specified that exceed the max shots set in the backend configuration the function will now raise aQiskitErrorexception. Additionally, if no shots argument is provided the default value is either 1024 (the previous behavior) ormax_shotsfrom the backend, whichever is lower.
தேய்மான குறிப்புகள்¶
ஒரு :class:'qiskit.circuit.QuantumCircuit' உடன் கூடிய முக்கிய பயனிலைகளுடன் (எ.கா. "ctl", "tgt") அவற்றின் திறவுச்சொல் பயனிலைகளை இன்னும் விளக்கமாக மாற்றுகிறது (எ.கா. "control_qubit", "target_qubit"). பழைய பெயர்கள் நீக்கப்பட்டுள்ளன. 'QuantumCircuit' முறைகளுக்கான பழைய மற்றும் புதிய அழைப்புகையொப்பங்கள் அடங்கிய அட்டவணை கீழே சேர்க்கப்பட்டுள்ளது.
Table 5 QuantumCircuitகேட் முறைகளுக்கான புதிய கையொப்பங்கள்¶குவாண்டம் சிர்குட்
முன்னாள் கையொப்பம்
புதிய கையொப்பம்
qiskit.extensions.HGateqc.h(q)qc.h(qubit)qiskit.extensions.CHGateqc.ch(ctl, tgt)qc.ch((control_qubit, target_qubit))qiskit.extensions.IdGateqc.iden(q)qc.iden(qubit)qiskit.extensions.RGateqc.iden(q)qc.iden(qubit)qiskit.extensions.RGateqc.r(theta, phi, q)qc.r(theta, phi, qubit)qiskit.extensions.RXGateqc.rx(theta, q)qc.rx(theta, qubit)qiskit.extensions.CrxGateqc.crx(theta, ctl, tgt)qc.crx(theta, control_qubit, target_qubit)qiskit.extensions.RYGateqc.ry(theta, q)qc.ry(theta, qubit)qiskit.extensions.CryGateqc.cry(theta, ctl, tgt)qc.cry(theta, control_qubit, target_qubit)qiskit.extensions.RZGateqc.rz(phi, q)qc.rz(phi, qubit)qiskit.extensions.CrzGateqc.crz(theta, ctl, tgt)qc.crz(theta, control_qubit, target_qubit)qiskit.extensions.SGateqc.s(q)qc.s(qubit)qiskit.extensions.SdgGateqc.sdg(q)qc.sdg(qubit)qiskit.extensions.FredkinGateqc.cswap(ctl, tgt1, tgt2)qc.cswap(control_qubit, target_qubit1, target_qubit2)qiskit.extensions.TGateqc.t(q)qc.t(qubit)qiskit.extensions.TdgGateqc.tdg(q)qc.tdg(qubit)qiskit.extensions.U1Gateqc.u1(theta, q)qc.u1(theta, qubit)qiskit.extensions.Cu1Gateqc.cu1(theta, ctl, tgt)qc.cu1(theta, control_qubit, target_qubit)qiskit.extensions.U2Gateqc.u2(phi, lam, q)qc.u2(phi, lam, qubit)qiskit.extensions.U3Gateqc.u3(theta, phi, lam, q)qc.u3(theta, phi, lam, qubit)qiskit.extensions.Cu3Gateqc.cu3(theta, phi, lam, ctl, tgt)qc.cu3(theta, phi, lam, control_qubit, target_qubit)qiskit.extensions.XGateqc.x(q)qc.x(qubit)qiskit.extensions.CnotGateqc.cx(ctl, tgt)qc.cx(control_qubit, target_qubit)qiskit.extensions.ToffoliGateqc.ccx(ctl1, ctl2, tgt)qc.ccx(control_qubit1, control_qubit2, target_qubit)`
qiskit.extensions.YGateqc.y(q)qc.y(qubit)qiskit.extensions.CyGateqc.cy(ctl, tgt)qc.cy(control_qubit, target_qubit)qiskit.extensions.ZGateqc.z(q)qc.z(qubit)qiskit.extensions.CzGateqc.cz(ctl, tgt)qc.cz(control_qubit, target_qubit)இயங்கும்:class: பல குவிட்களில் qiskit.pulse.Acquire நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். கூடுதலாக,:class: qiskit.pulse.AcquireInstruction அளவுருக்கள்` mem_slots` மற்றும்` reg_slots` ஆகியவை நீக்கப்பட்டன. அதற்கு பதிலாக `` reg_slot`` மற்றும் `` mem_slot`` ஆகியவற்றைப் பயன்படுத்த வேண்டும்.
:class:'qiskit.providers.models.PulseDefaults' class 'circuit_instruction_map' இன் பண்புக்கூறு நீக்கப்பட்டுள்ளது மற்றும் எதிர்கால வெளியீட்டில் நீக்கப்படும். அதற்கு பதிலாக நீங்கள் புதிய பண்பு "instruction_schedule_map" பயன்படுத்த வேண்டும். இது பண்புக்கூறின் மதிப்பின் வகையுடன் பொருந்துவதற்காக செய்யப்பட்டது, இது ஒரு "InstructionScheduleMap" ஆகும்.
The
qiskit.pulse.PersistentValuecommand is deprecated and will be removed in a future release. Similar functionality can be achieved with theqiskit.pulse.ConstantPulsecommand (one of the new parametric pulses). Compare the following:from qiskit.pulse import Schedule, PersistentValue, ConstantPulse, \ DriveChannel # deprecated implementation sched_w_pv = Schedule() sched_w_pv += PersistentValue(value=0.5)(DriveChannel(0)) sched_w_pv += PersistentValue(value=0)(DriveChannel(0)) << 10 # preferred implementation sched_w_const = Schedule() sched_w_const += ConstantPulse(duration=10, amp=0.5)(DriveChannel(0))
Qiskit-டெர்ராவில் பைதான் 3.5 ஆதரவு நீக்கப்பட்டது. 09/13/2020 என்ற பதிப்பிற்கான அப்ஸ்ட்ரீம் பைதான் சமூகத்தின் வாழ்க்கை தேதி முடிவடைந்த பின்னர் முதல் வெளியீட்டில் ஆதரவு நீக்கப்படும்.
The
require_cptpkwarg of theqiskit.quantum_info.process_fidelity()function has been deprecated and will be removed in a future release. It is superseded by two separate kwargsrequire_cpandrequire_tp.இதற்கான `` scale`` அளவுருவை அமைத்தல்:meth: qiskit.circuit.QuantumCircuit.draw மற்றும்:func:` qiskit.visualization.circuit_drawer` முதல் நிலை வாதம் நீக்கப்பட்டு எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக நீங்கள் `` scale`` ஐ முக்கிய வாதமாகப் பயன்படுத்த வேண்டும்.
The
qiskit.tools.qi.qimodule is deprecated and will be removed in a future release. The legacy functions in the module have all been superseded by functions and classes in theqiskit.quantum_infomodule. A table of the deprecated functions and their replacement are below:Table 6 `` qiskit.tools.qi.qi`` மாற்றீடுகள்¶ நீக்கப்படும்
மாற்று
qiskit.tools.partial_trace()qiskit.tools.choi_to_pauli()qiskit.quantum_info.Choiandquantum_info.PTMqiskit.tools.chop()numpy.roundqiskit.tools.qi.qi.outer``numpy.outer`
qiskit.tools.concurrence()qiskit.tools.shannon_entropy()qiskit.tools.entropy()qiskit.tools.mutual_information()qiskit.tools.entanglement_of_formation()qiskit.tools.is_pos_def()quantum_info.operators.predicates.is_positive_semidefinite_matrixThe
qiskit.quantum_info.states.statesmodule is deprecated and will be removed in a future release. The legacy functions in the module have all been superseded by functions and classes in theqiskit.quantum_infomodule.Table 7 `` qiskit.quantum_info.states.states`` மாற்றீடுகள்¶ நீக்கப்படும்
மாற்று
qiskit.quantum_info.states.states.basis_stateqiskit.quantum_info.states.states.projector"அட்டவணை" மற்றும் "பல்ஸ்" பொருட்களுக்கான "வரைய()" முறையின் "அளவிடுதல்" அளவுரு நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் நீக்கப்படும். அதற்கு பதிலாக புதிய "அளவு" அளவுருபயன்படுத்தப்பட வேண்டும். இது துடிப்பு மற்றும் சுற்று வரைபடங்கள் இடையே ஒரு நிலையான வாதம் வேண்டும் செய்யப்பட்டது. உதாரணமாக:
#The consistency in parameters is seen below #For circuits circuit = QuantumCircuit() circuit.draw(scale=0.2) #For pulses pulse = SamplePulse() pulse.draw(scale=0.2) #For schedules schedule = Schedule() schedule.draw(scale=0.2)
பிழை திருத்தங்கள்¶
முன்பு, ஒரு சுற்று சிதைப்பதற்கு முன் ":meth:'qiskit.circuit.QuantumCircuit.bind_parameters" என்று அழைப்பது, கட்டப்பட்ட மதிப்புகள் சரியாக மக்கிப் போகும் கேட்களில் மாற்றப்படாமல் இருக்கும். இது எந்த ஒழுங்கிலும் சிதைவதாகவும், சிதைவதாகவும் இருக்கும் வகையில் தீர்க்கப்பட்டுள்ளது. 'பிரச்சினை #2482 <https://github.com/Qiskit/qiskit-terra/issues/2482>'_ மற்றும் 'சிக்கல் #3509 <https://github.com/Qiskit/qiskit-terra/issues/3509>' சரிசெய்கிறது_
ஏற்கனவே உள்ள ஒரு பிளாக்கில் ஒரு கேட் சேர்க்க லாமா என்பதை தீர்மானிக்கும் போது "Collect2qBlocks" பாஸ் முன்னர் பாரம்பரிய நிலைமைகள் கருத்தில் இல்லை. சில சந்தர்ப்பங்களில், "optimization_level=3" உடன் டிரான்ஸ்பில் போது பாரம்பரிய நிலைமைகள் இழக்கப்படுகிறது. இது தீர்க்கப்பட்டு, கிளாஸிக்கல் கண்டிஷன் செய்யப்பட்ட வாயில்கள் ஒரு பிளாக்கில் சேர்க்கப்படவில்லை. 'சிக்கல் #3215 <https://github.com/Qiskit/qiskit-terra/issues/3215>' சரிசெய்கிறது_
":meth:'qiskit.circuit.QuantumCircuit.draw' மற்றும் ":func:'qiskit.visualization.circuit_drawer' இல் உள்ள சுற்று இழுப்பறைகளுக்கான அனைத்து வெளியீடு வகைகளும் கட்டுப்படுத்தப்பட்ட தனிப்பயன் கேட்களை வரைவதற்கு நிலையான மற்றும் / அல்லது மேம்பட்ட ஆதரவைக் கொண்டுள்ளன. 'பிரச்சினை #3546 <https://github.com/Qiskit/qiskit-terra/issues/3546>'_, 'சிக்கல் #3763 <https://github.com/Qiskit/qiskit-terra/issues/3763>'_, மற்றும் 'பிரச்சினை #3764 <https://github.com/Qiskit/qiskit-terra/issues/3764>' சரிசெய்கிறது_
Explanation and examples have been added to documentation for the :class:'qiskit.circuit.QuantumCircuit' methods for adding gates: :meth:'qiskit.circuit.QuantumCircuit.ccx', :meth:'qiskit.circuit.QuantumCircuit.ch', :meth:'qiskit.circuit.QuantumCircuit.crz', :meth:'qiskit.circuit.QuantumCircuit.cswap', :meth:'qiskit.circuit.QuantumCircuit.cu1', :meth:'qiskit.circuit.QuantumCircuit.cu3', :meth:'qiskit.circuit.QuantumCircuit.cx', :meth:'qiskit.circuit.QuantumCircuit.cy', :meth:'qiskit.circuit.QuantumCircuit.cz', :meth:'qiskit.circuit.QuantumCircuit.h', :meth:'qiskit.circuit.QuantumCircuit.iden', :meth:'qiskit.circuit.QuantumCircuit.rx', :meth:'qiskit.circuit.QuantumCircuit.ry', :meth:'qiskit.circuit.QuantumCircuit.rz', :meth:'qiskit.circuit.QuantumCircuit.s', :meth:'qiskit.circuit.QuantumCircuit.sdg', :meth:'qiskit.circuit.QuantumCircuit.swap', :meth:'qiskit.circuit.QuantumCircuit.t', :meth:'qiskit.circuit.QuantumCircuit.tdg', :meth:'qiskit.circuit.QuantumCircuit.u1', :meth:'qiskit.circuit.QuantumCircuit.u2', :meth:'qiskit.circuit.QuantumCircuit.u3', :meth:'qiskit.circuit.QuantumCircuit.x', :meth:'qiskit.circuit.QuantumCircuit.y', :meth:'qiskit.circuit.QuantumCircuit.z'. 'பிரச்சினை #3400 <https://github.com/Qiskit/qiskit-terra/issues/3400>' சரிசெய்கிறது_
சர்கூட் காட்சிப்படுத்தலில் சிக்கலான எண் அளவுருவை கையாளுவதற்கான திருத்தங்கள். 'பிரச்சினை #3640 <https://github.com/Qiskit/qiskit-terra/issues/3640>' சரிசெய்கிறது_
பிற குறிப்புகள்¶
டிரான்ஸ்பைலர் தேர்ச்சி :mod:'qiskit.transpiler.passes' அடைவு துணை அடைவுகள் சிறப்பாக செயல்பாடு மூலம் வகைப்படுத்த ஏற்பாடு செய்யப்பட்டுள்ளது. அவை அனைத்தும் இன்னும் "qiskit.transpiler.passes" என்ற பெயரில் அணுகக்கூடியவை.
ஏர் 0.4.0¶
சேர்க்கப்பட்டது¶
IBMQ பின்முனைக்கான அடிப்படை சாதன இரைச்சல் மாதிரியை உருவாக்குவதற்கான 'NoiseModel.from_backend' சேர்க்கப்பட்டது (#569)
"QasmSimulator", "StatevectorSimulator", மற்றும் "UnitarySimulator" ஆகியபல-ஜிபியூ செயல்படுத்தப்பட்ட உருவகப்படுத்துதல் முறைகளை ச்சேர்த்தது. காஸிம் சிமுலேட்டர் அடர்த்தி அணி மற்றும் ஸ்டேட்வெக்டர் முறைகளின் GPU பதிப்பைக் கொண்டுள்ளது மற்றும் "முறை": "density_matrix_gpu" அல்லது "முறை": "statevector_gpu"" ஐ "backend_options" இல் பயன்படுத்தலாம். நிலைவெக்டர் சிமுலேட்டர் ஜி. பி. யு முறையை "முறை" பயன்படுத்தி அணுக முடியும்: "statevector_gpu".. ஒற்றை சிமுலேட்டர் ஜி. பீ. யூ முறையை "முறை" பயன்படுத்தி அணுகலாம்: "unitary_gpu". இந்த பேக்எண்டுகள் CUDA ஐப் பயன்படுத்துகிறது மற்றும் ஒரு NVidia GPU தேவைப்படுகிறது. (#544)
"PulseSimulator" பின்நிலை சேர்க்கப்பட்டது (#542)
"PulseSystemModel" மற்றும் "HamiltonianModel" வகுப்புகள் "PulseSimulator" (#496, #493) இல் பயன்படுத்தப்பட வேண்டிய மாதிரிகளை பிரதிநிதித்துவப்படுத்துகின்றன
"pulseSystemModel" பொருள்களை அளவுருக்களின் பட்டியலிலிருந்து உருவாக்க 'duffing_model_generators' சேர்க்கப்பட்டது (#516)
C++ க்கு இடம்பெயர்க்கப்பட்ட ODE செயல்பாடு (#442, #350)
உயர் நிலை துடிப்பு போலி சோதனைகள் சேர்க்கப்பட்டது (#379)
BLAS lib (#543) ஐ தேட பாதையை அமைக்க சிமேக் BLAS_LIB_PATH கொடி உருவாக்கவும்
மாற்றப்பட்டது¶
போலி மூல குறியீட்டை ஒழுங்கமைக்க "src" கோப்பகத்தை கட்டமைப்பை மாற்றியது. சிமுலேட்டர் கண்ட்ரோலர் தலைப்புகள் "src/ controllers" மற்றும் போலி முறை மாநில தலைப்புகள் "src / simulators" (#544)
பல செயல்பாடுகளின் இருப்பிடத்தை (#568) நகர்த்தியது: * "qiskit.provider.aer.noise.errors" இன் உள்ளடக்கங்களை "qiskit.provider.aer.noise.utils" தொகுதிக்கு நகர்த்தியது.
முன்னிருப்பாக (#579) ஒரு சுற்று (இணைவு) உள்ள அடுத்தடுத்த வாயில்கள் திரட்ட செயல்படுத்தப்பட்டது.
நீக்கப்படும்¶
"utils.qobj_utils" செயல்பாடுகள் (#568)
"qiskit.providers.aer.noise.device.basic_device_noise_model" என்று கூறி. இது "NoiseModel.from_backend" முறை (#569)
சேய்மையான¶
நீக்கப்பட்டது 'NoiseModel.as_dict', 'QuantumError.as_dict', 'ReadoutError.as_dict', மற்றும் "QuantumError.kron" முறைகள் நீக்கப்பட்டது என்று 0.3 (#568).
பற்றவைப்பு 0.2¶
எந்த மாற்றமும் இல்லை
அக்வா 0.6¶
எந்த மாற்றமும் இல்லை
IBM Q வழங்குபவர் 0.4.6¶
சேர்க்கப்பட்டது¶
பல புதிய முறைகள் சேர்க்கப்பட்டன :class:'IBMQBackend<qiskit.providers.ibmq.ibmqbackend.IBMQBackend>':
:meth:'~qiskit.providers.ibmq.job.IBMQJob.wait_for_final_state' வேலை முடியும் வரை தடுக்கிறது. ஒவ்வொரு கேள்விக்கும் பிறகு பின்னூட்டத்தை வழங்க ுவதற்கு அது அழைக்கும் செயல்பாட்டை எடுக்கும்.
:meth:'~qiskit.providers.ibmq.ibmqbackend.IBMQBackend.active_jobs' தற்போது முடிக்கப்படாத நிலையில் உள்ள பின்முனைக்கு சமர்ப்பிக்கப்பட்ட வேலைகளை த் தரும்.
:meth:'~qiskit.providers.ibmq.ibmqbackend.IBMQBackend.job_limit' பின்முனைக்கான பணி வரம்பை அளிக்கிறது.
:meth:'~qiskit.providers.ibmq.ibmqbackend.IBMQBackend.remaining_jobs_count' பணி வரம்பை அடைவதற்கு முன் நீங்கள் பின்நிலைக்கு சமர்ப்பிக்கக்கூடிய வேலைகளின் எண்ணிக்கையை அளிக்கிறது.
:class:'~qiskit.providers.ibmq.job.QueueInfo' இப்போது ஒரு புதிய உள்ளது :meth:'~qiskit.providers.ibmq.job.QueueInfo.format' முறை, வரிசை தகவலின் வடிவமைக்கப்பட்ட சரத்தை அளிக்கிறது.
IBMQJobnow has three new methods:done(),running(), andcancelled()that are used to indicate job status.:meth:'qiskit.providers.ibmq.ibmqbackend.IBMQBackend.run()' இப்போது விருப்ப 'job_tags' அளவுருவை ஏற்றுக்கொள்கிறது. குறிப்பிடப்பட்டால், 'job_tags' வேலைக்கு ஒதுக்கப்படுகிறது, இது பின்னர் ஒரு வடிகட்டியாக பயன்படுத்தப்படலாம் :meth:'qiskit.providers.ibmqbackend.IBMQBackend.jobs()'.
:class:'~qiskit.providers.ibmq.managed.IBMQJobManager' now has a new method :meth:'~qiskit.providers.ibmq.managed.IBMQJobManager.retrieve_job_set()' என்று நீங்கள் வேலை தொகுப்பு ஐடி பயன்படுத்தி முன்பு சமர்ப்பிக்கப்பட்ட வேலை தொகுப்பு மீட்டெடுக்க அனுமதிக்கிறது.
மாற்றப்பட்டது¶
"விதிவிலக்கு" படிநிலை இன்னும் சிறப்பு வகுப்புகள் மூலம் சுத்திகரிக்கப்பட்டுள்ளது. இருப்பினும், நீங்கள் அவர்களின் பெற்றோர் விதிவிலக்குகளை ('IBMQAccountError' போன்றவை) தொடர்ந்து பிடிக்கலாம். மேலும், விதிவிலக்கு வர்க்கம் "IBMQApiUrlError" பதிலாக "IBMQAccountCredentialsInvalidUrl" மற்றும் "IBMQAccountCredentialsInvalidToken" ஆல் மாற்றப்பட்டுள்ளது.
நீக்கப்படும்¶
ப்ரோட்டோக்கால் (எ.கா., "http://'') இல்லாமல் ப்ராக்ஸி urlகளின் பயன்பாடு சமீபத்திய பைதான் மாற்றங்களால் நீக்கப்படுகிறது.
Qiskit 0.14.0¶
டெரா 0.11.0¶
முன்னுரை¶
0.11.0 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பிழைத்திருத்தங்கள் உள்ளன. இந்த வெளியீட்டின் மிகப்பெரிய மாற்றம் பல்ஸ் திட்டமிடுபவர் கூடுதலாக உள்ளது. இது பயனர்கள் தங்கள் குவாண்டம் நிரலை ஒரு "குவாண்டம்சர்க்யூட்" என வரையறுக்க அனுமதிக்கிறது, பின்னர் அதை அடிப்படை பல்ஸ்வழிமுறைகளுக்கு வரைபடமாக்கஅனுமதிக்கிறது, இது குவாண்டம் வன்பொருள் சர்க்யூட் செயல்படுத்த ும்.
புதிய அம்சங்கள்¶
"பின்முனைபண்புகள்": "gate_property'', "gate_error", "gate_length", "qubit_property t1", "t2", "readout_error", "அதிர்வெண்" இலிருந்து பயனர்-குறிப்பிட்ட தரவை எளிதாக மீட்டெடுக்க 5 புதிய கட்டளைகளை சேர்த்துள்ளோம். அவை பின்முனை பண்புகளின் குறிப்பிட்ட மதிப்புகளை திருப்பும். உதாரணமாக:
from qiskit.test.mock import FakeOurense backend = FakeOurense() properties = backend.properties() gate_property = properties.gate_property('u1') gate_error = properties.gate_error('u1', 0) gate_length = properties.gate_length('u1', 0) qubit_0_property = properties.qubit_property(0) t1_time_0 = properties.t1(0) t2_time_0 = properties.t2(0) readout_error_0 = properties.readout_error(0) frequency_0 = properties.frequency(0)
ஒரு அறிவுறுத்தல் பொருள் அளவுருவாக்கப்பட்டுள்ளதா என்பதைச் சரிபார்க்க `` Instruction.is_parameterized () `` முறை சேர்க்கப்பட்டது. அறிவுறுத்தலுக்கு அதன் ஒரு அளவுருவுக்கு
ParameterExpressionஅல்லதுParameterபொருள் இருந்தால் மட்டுமே இந்த முறைTrue.புதிய பகுப்பாய்வு பாஸ் `` Layout2qDistance`` ஐச் சேர்த்தது. ``property_set['layout'] `` அமைக்கப்பட்டவுடன், இந்த பாஸ் ஒரு தளவமைப்பு தேர்வை "மதிப்பெண்" செய்ய அனுமதிக்கிறது. சர்க்யூட்டில் உள்ள ஒவ்வொரு இரண்டு-குவிட் வாயிலுக்கும் அவை நேரடியாக இணைக்கப்படாதபோது தூரத்தின் கூட்டுத்தொகையாக இருக்கும். இந்த மதிப்பெண் இணைப்பு வரைபடத்தில் திசையைக் கருத்தில் கொள்ளாது. குறைந்த எண்ணிக்கையில், தளவமைப்பு தேர்வு சிறந்தது.
எடுத்துக்காட்டாக, ஒரு நேரியல் இணைப்பு வரைபடம் `` [0] - [2] - [1] `` மற்றும் பின்வரும் சுற்று:
qr = QuantumRegister(2, 'qr') circuit = QuantumCircuit(qr) circuit.cx(qr[0], qr[1])
தளவமைப்பு `` {qr [0]: 0, qr [1]: 1} `` என்றால், `` Layout2qDistance``
property_set['layout_score'] = 1ஐ அமைக்கும். தளவமைப்பு `` {qr [0]: 0, qr [1]: 2} `` எனில், இதன் விளைவாக `` property_set ['Layout_score'] = 0``. குறைந்த மதிப்பெண், சிறந்தது."qiskit" சேர்க்கப்பட்டது. QuantumCircuit.cnot" என்பது "QuantumCircuit" இன் "cx" முறைக்கு ஒரு மாற்றுப் பெயர். "cnot" மற்றும் "cx" ஆகிய பெயர்கள் பெரும்பாலும் ஒன்றுக்கொன்று மாறிமாறி பயன்படுத்தப்படுகின்றன, இப்போது 'cx' முறை இரண்டு பெயர்களையும் கொண்டு அழைக்கப்படலாம்.
"qiskit" சேர்க்கப்பட்டது. குவாண்டம்சர்க்யூட்.டாபோலி" என்பது "குவாண்டம் சர்க்யூட்" இன் "ccx" முறைக்கு ஒரு மாற்றுப் பெயர். "toffoli" மற்றும் "ccx" ஆகிய பெயர்கள் பெரும்பாலும் ஒன்றுக்கொன்று மாறிமாறி பயன்படுத்தப்படுகின்றன, இப்போது 'ccx' முறை இரண்டு பெயர்களையும் கொண்டு அழைக்கப்படலாம்.
"qiskit" சேர்க்கப்பட்டது. குவாண்டம்சர்க்யூட்.ஃப்ரெட்கின்" என்பது "QuantumCircuit" இன் "cswp" முறைக்கான ஒரு மாற்றுப் பெயர். 'fredkin' மற்றும் 'cswap' ஆகிய பெயர்கள் பெரும்பாலும் ஒன்றுக்கொன்று மாறிமாறி பயன்படுத்தப்படுகின்றன, இப்போது 'cswp' முறை இரண்டு பெயர்களையும் அழைக்கலாம்.
"qiskit.visualization.circuit_drawer()" மற்றும் "qiskit.circuit.QuantumCircuit.draw()' முறைக்கான "மரப்பால்" வெளியீட்டு முறை இப்போது கேட் லேபல்கள் மற்றும் அளவுருக்கள் இருந்து மூல லேட்டக்ஸ் வழியாக கடந்து ஒரு முறை உள்ளது. இதை செய்வதற்கான தொடரியல் matplotlib இன் 'mathtext mode <https://matplotlib.org/tutorials/text/mathtext.html>'__ தொடரியல் பிரதிபலிக்கிறது. ஒரு ஜோடி '$' எழுத்துக்குறிகளுக்கு இடையே லேபிள் சரத்தின் எந்த பகுதியும் மூல மரப்பால் என கருதப்பட்டு நேரடியாக உருவாக்கப்பட்ட வெளியீடு லேட்டக்ஸ் க்கு அனுப்பப்படும். இது லேட்டக்ஸ் இழுப்பறை மூலம் உருவாக்கப்பட்ட சர்க்யூட் வரைபடத்திற்கு மேலும் மேம்பட்ட வடிவமைப்பைசேர்க்க லாம்.
இந்த வெளியீட்டிற்கு முன்பு அனைத்து கேட் லேபல்களும் utf8 -> லேட்டக்ஸ் மாற்றம் மூலம் இயக்கப்பட்டன, இது வெளியீடு லேட்டக்ஸ் எதிர்பார்த்தபடி சரத்தை தொகுக்கும் என்பதை உறுதி செய்ய. இது இன்னும் '$' ஜோடிக்கு வெளியே உள்ள லேபிலின் அனைத்து பகுதிகளுக்கும் என்ன நடக்கிறது. மேலும் உங்கள் லேபிளில் ஒரு டாலர் குறியைப் பயன்படுத்த விரும்பினால், லேபிள் சரத்தில் (அதாவது '$') அதை நீங்கள் தவிர்க்க வேண்டும்.
நீங்கள் விரும்பும் சரியான லேபிளை உருவாக்க utf8 -> லேடெக்ஸ் மாற்றத்துடன் இந்த பாஸ்ட்ரூவை கலந்து பொருத்தலாம், எடுத்துக்காட்டாக:
from qiskit import circuit circ = circuit.QuantumCircuit(2) circ.h([0, 1]) circ.append(circuit.Gate(name='α_gate', num_qubits=1, params=[0]), [0]) circ.append(circuit.Gate(name='α_gate$_2$', num_qubits=1, params=[0]), [1]) circ.append(circuit.Gate(name='\$α\$_gate', num_qubits=1, params=[0]), [1]) circ.draw(output='latex')
will now render the first custom gate's label as
α_gate, the second will beα_gatewith a 2 subscript, and the last custom gate's label will be$α$_gate.கட்டுப்படுத்தப்பட்ட வாயில்களைக் குறிக்க `` ControlledGate`` வகுப்பைச் சேர்க்கவும். கட்டுப்படுத்தப்பட்ட வாயில் நிகழ்வுகள் `` control(n) `` `` Gate`` பொருட்களின் முறை மூலம் உருவாக்கப்படுகின்றன, அங்கு
nகட்டுப்பாடுகளின் எண்ணிக்கையைக் குறிக்கிறது. கட்டுப்பாட்டு வாயில்கள் புதிய வாயிலில் கட்டுப்படுத்தப்பட்ட குவிட்டுகளுக்கு முன் வருகின்றன. உதாரணத்திற்கு:from qiskit import QuantumCircuit from qiskit.extensions import HGate hgate = HGate() circ = QuantumCircuit(4) circ.append(hgate.control(3), [0, 1, 2, 3]) print(circ)
உருவாக்குகிறது:
q_0: |0>──■── │ q_1: |0>──■── │ q_2: |0>──■── ┌─┴─┐ q_3: |0>┤ H ├ └───┘`` meas_level`` அளவுருக்கள் மற்றும் புலங்களின் அனுமதிக்கப்பட்ட மதிப்புகள் இப்போது IntEnum வகுப்பிலிருந்து` qiskit.qobj.utils.MeasLevel` உறுப்பினராக இருக்கலாம். ஒரு துடிப்பு பரிசோதனையுடன் `` execute`` (அல்லது வேறு எங்கும்
meas_levelகுறிப்பிடப்பட்டுள்ளது) அழைக்கும் போது இதைப் பயன்படுத்தலாம். உதாரணத்திற்கு:from qiskit import QuantumCircuit, transpile, schedule, execute from qiskit.test.mock import FakeOpenPulse2Q from qiskit.qobj.utils import MeasLevel, MeasReturnType backend = FakeOpenPulse2Q() qc = QuantumCircuit(2, 2) qc.h(0) qc.cx(0,1) qc_transpiled = transpile(qc, backend) sched = schedule(qc_transpiled, backend) execute(sched, backend, meas_level=MeasLevel.CLASSIFIED)
மேலே உள்ள இந்த எடுத்துக்காட்டில், `` measure_level = MeasLevel.CLASSIFIED`` மற்றும் `` measure_level = 2`` ஆகியவற்றை இப்போது பரிமாறிக் கொள்ளலாம்.
தடை தீர்க்கும் அடிப்படையில் புதிய தளவமைப்பு தேர்வுக்குழு சேர்க்கப்பட்டுள்ளது. CSPLayout ஒரு தளவமைப்பைக் கண்டுபிடிப்பதில் உள்ள சிக்கலை ஒரு கட்டுப்பாட்டு சிக்கலாக மாதிரியாகக் கொண்டு, அதைத் தீர்க்க சுழல்நிலை பின்னடைவைப் பயன்படுத்துகிறது.
cmap16 = CouplingMap(FakeRueschlikon().configuration().coupling_map) qr = QuantumRegister(5, 'q') circuit = QuantumCircuit(qr) circuit.cx(qr[0], qr[1]) circuit.cx(qr[0], qr[2]) circuit.cx(qr[0], qr[3]) pm = PassManager(CSPLayout(cmap16)) circuit_after = pm.run(circuit) print(pm.property_set['layout'])
Layout({ 1: Qubit(QuantumRegister(5, 'q'), 1), 2: Qubit(QuantumRegister(5, 'q'), 0), 3: Qubit(QuantumRegister(5, 'q'), 3), 4: Qubit(QuantumRegister(5, 'q'), 4), 15: Qubit(QuantumRegister(5, 'q'), 2) })
`` CSPLayout (...,strict_direction=True) `` அளவுரு மிகவும் கட்டுப்படுத்தப்பட்டுள்ளது, ஆனால் அதற்குப் பிறகு `` CXDirection`` ஐ இயக்க வேண்டிய அவசியமில்லை என்பதற்கு இது உத்தரவாதம் அளிக்கும்.
pm = PassManager(CSPLayout(cmap16, strict_direction=True)) circuit_after = pm.run(circuit) print(pm.property_set['layout'])
Layout({ 8: Qubit(QuantumRegister(5, 'q'), 4), 11: Qubit(QuantumRegister(5, 'q'), 3), 5: Qubit(QuantumRegister(5, 'q'), 1), 6: Qubit(QuantumRegister(5, 'q'), 0), 7: Qubit(QuantumRegister(5, 'q'), 2) })
கட்டுப்பாட்டு அமைப்பு தீர்க்கப்படாவிட்டால், layout சொத்து அமைக்கப்படவில்லை.
circuit.cx(qr[0], qr[4]) pm = PassManager(CSPLayout(cmap16)) circuit_after = pm.run(circuit) print(pm.property_set['layout'])
NonePulseBackendConfiguration (பொதுவாக backend.configuration () என அணுகப்படுகிறது) அதன் தரவையும் பல்ஸ் சேனல்ஸ்பெக்கில் இருக்கும் செயல்பாட்டையும் ஆராய பயனுள்ள முறைகள் மூலம் நீட்டிக்கப்பட்டுள்ளது. பல்ஸ் சேனல்ஸ்பெக் எதிர்காலத்தில் நீக்கப்படும். உதாரணத்திற்கு:
backend = provider.get_backend(backend_name) config = backend.configuration() q0_drive = config.drive(0) # or, DriveChannel(0) q0_meas = config.measure(0) # MeasureChannel(0) q0_acquire = config.acquire(0) # AcquireChannel(0) config.hamiltonian # Returns a dictionary with hamiltonian info config.sample_rate() # New method which returns 1 / dt
"PulseDefaults" (பொதுவாக "backend.defaults()"என அணுகப்படுகிறது) ஒரு பண்புக்கூறு உள்ளது, "circuit_instruction_map" இது CmdDef இன் முறைகளைக் கொண்டுள்ளது. புதிய 'circuit_instruction_map' CmdDef என்ன அப்பால் மூன்று புதிய செயல்பாடுகளை ஒரு "InstructionScheduleMap" பொருள்:
qubit_instructions (qubits) குவிட்டுகளுக்கு வரையறுக்கப்பட்ட செயல்பாடுகளை வழங்குகிறது
op வரையறுக்கப்படவில்லை எனில் assert_has (அறிவுறுத்தல், qubits) ஒரு பிழையை எழுப்புகிறது
பாப் போன்ற நீக்கு (அறிவுறுத்தல், குவிட்ஸ்), ஆனால் அளவுருக்கள் தேவையில்லை
CmdDef இலிருந்து சில வேறுபாடுகள் உள்ளன:
`` __init__`` எந்த வாதங்களையும் எடுக்கவில்லை
`` cmds`` மற்றும் `` cmd_qubits`` ஆகியவை நீக்கப்பட்டு, `` instructions`` மற்றும் `` qubits_with_instruction``
உதாரணமாக:
backend = provider.get_backend(backend_name) inst_map = backend.defaults().circuit_instruction_map qubit = inst_map.qubits_with_instruction('u3')[0] x_gate = inst_map.get('u3', qubit, P0=np.pi, P1=0, P2=np.pi) pulse_schedule = x_gate(DriveChannel(qubit))
ஒரு புதிய க்வார்க் அளவுரு, "show_framechange_channels" விருப்பமாக சேனல்களை செயல்முடக்கு," qiskit.visualization.pulse_drawer()'' செயல்பாடு மற்றும் "qiskit.pulse.Schedule.draw()" முறை க்கு சேர்க்கப்பட்டது. இந்த புதிய க்வார்க் "தவறு" என அமைக்கப்படும்போது வெளியீட்டு துடிப்பு அட்டவணை காட்சிப்படுத்தல் மட்டுமே சட்ட மாற்றங்களை உள்ளடக்கிய எந்த சேனல்களையும் உள்ளடக்காது.
உதாரணத்திற்கு:
from qiskit.pulse import * from qiskit.pulse import library as pulse_lib gp0 = pulse_lib.gaussian(duration=20, amp=1.0, sigma=1.0) sched = Schedule() channel_a = DriveChannel(0) channel_b = DriveChannel(1) sched += Play(gp0, channel_a) sched = sched.insert(60, ShiftPhase(-1.57, channel_a)) sched = sched.insert(30, ShiftPhase(-1.50, channel_b)) sched = sched.insert(70, ShiftPhase(1.50, channel_b)) sched.draw(show_framechange_channels=False)
ஒரு புதிய பயன்பாட்டு செயல்பாடு `` qiskit.result.marginal_counts () `` சேர்க்கப்பட்டுள்ளது, இது சில வட்டி குறியீடுகளில் எண்ணிக்கையை ஓரங்கட்ட அனுமதிக்கிறது. தேவைக்கு அதிகமான குவிட்கள் அளவிடப்படும்போது இது பயனுள்ளதாக இருக்கும், மேலும் அவற்றில் சில துணைக்குழுக்களுக்கு மட்டுமே அவதானிப்பு எண்ணிக்கையைப் பெற ஒருவர் விரும்புகிறார்.
`` Passmanager.run (...) `` ஒன்றுக்கு மேற்பட்ட சுற்றுடன் பயன்படுத்தப்படும்போது, இந்த சுற்றுகளின் இடமாற்றம் இணையாக இயங்கும்.
சதுர அடைப்புக்குறி ஆபரேட்டரைப் பயன்படுத்தி பாஸின் துணைக்குழுவைக் கொண்ட புதிய பாஸ்மேனேஜரை உருவாக்க பாஸ்மேனேஜர்களை இப்போது வெட்டலாம். இது எளிதாக சோதனை மற்றும் காட்சிப்படுத்தலுக்காக பாஸ்மேனேஜரின் ஒரு பகுதியை இயக்க அல்லது வரைய அனுமதிக்கிறது. எடுத்துக்காட்டாக, பாஸ்மேனேஜரின் முதல் 3 பாஸ்களை வரைய முயற்சிப்போம், அல்லது எங்கள் சுற்றில் இரண்டாவது பாஸை இயக்கலாம்:
pm[0:4].draw() circuit2 = pm[1].run(circuit)
இப்போது, பாஸ்மேனேஜர்களை இரண்டு பாஸ்மேனேஜர்களைச் சேர்ப்பதன் மூலம் அல்லது பாஸ் மேனேஜரில் பாஸ் / பாஸின் பட்டியலை நேரடியாக சேர்ப்பதன் மூலம் உருவாக்க முடியும்.
pm = pm1[0] + pm2[1:3] pm += [setLayout, unroller]
ஒரு அடிப்படை "scheduler" தொகுதி இப்போது Qiskit சேர்க்கப்பட்டுள்ளது. 'scheduler' ஒரு உள்ளீடு 'QuantumCircuit' ஒரு துடிப்பு "அட்டவணை" க்கு மாற்றுகிறது. திட்டமிடுநர் உள்ளீடு ஒரு "அட்டவணை" மற்றும் ஒரு துடிப்பு "பின்முனை", அல்லது ஒரு "CmdDef" இது ஒரு குறிப்பிட்ட qubits மீது சுற்று "அறிவுறுத்தல்" பொருட்கள் மற்றும் ஒரு "meas_map" ஒன்றாக நிகழ வேண்டும் என்பதை தீர்மானிக்கிறது.
எடுத்துக்காட்டு திட்டமிடல்:
from qiskit import QuantumCircuit, transpile, schedule from qiskit.test.mock import FakeOpenPulse2Q backend = FakeOpenPulse2Q() qc = QuantumCircuit(2, 2) qc.h(0) qc.cx(0,1) qc_transpiled = transpile(qc, backend) schedule(qc_transpiled, backend)
திட்டமிடுபவர் தற்போது இரண்டு திட்டமிடல் கொள்கைகளை ஆதரிக்கிறார், as_late_as_possible (
alap) மற்றும்` as_soon_as_possible` (`` asap``), இவை முறையே துடிப்பு வழிமுறைகளை முடிந்தவரை தாமதமாக அல்லது விரைவில் ஒரு குவிட்ஸில் நிகழும் என்று திட்டமிடுகின்றன. சுற்று. உள்ளீட்டு வாதம் ``method` உடன் திட்டமிடல் கொள்கை தேர்ந்தெடுக்கப்படலாம், எடுத்துக்காட்டாக:schedule(qc_transpiled, backend, method='alap')
`` QuantumCircuit`` க்குள் ஒரு துடிப்பு `` Schedule`` பயன்படுத்த எளிதானது, இது ஒரு QuantumCircuit` இல் பயன்படுத்தப்படக்கூடிய கேட் போன்ற தனிப்பயன் சுற்று அறிவுறுத்தலுடன் மேப்பிங் செய்வதன் மூலம். இதைச் செய்ய, முதலில், தனிப்பயன் வாயிலை வரையறுத்து, பின்னர் நுழைவாயிலுக்கு `` CmdDef`` இல் ஒரு நுழைவைச் சேர்க்கவும், ஒவ்வொரு குவிட்டிற்கும் கேட் பயன்படுத்தப்படும். இந்த வாயிலை `` QuantumCircuit`` இல் பயன்படுத்தலாம். திட்டமிடல் நேரத்தில் கேட் அடிப்படை துடிப்பு அட்டவணைக்கு மாற்றப்படும். இந்த நுட்பத்தைப் பயன்படுத்துவது இக்னிஸ் போன்ற முன்பே இருக்கும் கிஸ்கிட் தொகுதிகளுடன் எளிதாக ஒருங்கிணைக்க அனுமதிக்கிறது.
உதாரணத்திற்கு:
from qiskit import pulse, circuit, schedule from qiskit.pulse import pulse_lib custom_cmd_def = pulse.CmdDef() # create custom gate custom_gate = circuit.Gate(name='custom_gate', num_qubits=1, params=[]) # define schedule for custom gate custom_schedule = pulse.Schedule() custom_schedule += pulse_lib.gaussian(20, 1.0, 10)(pulse.DriveChannel) # add schedule to custom gate with same name custom_cmd_def.add('custom_gate', (0,), custom_schedule) # use custom gate in a circuit custom_qc = circuit.QuantumCircuit(1) custom_qc.append(custom_gate, qargs=[0]) # schedule the custom gate schedule(custom_qc, cmd_def=custom_cmd_def, meas_map=[[0]])
தெரிந்த சிக்கல்கள்¶
ஒன்றுக்கு மேற்பட்ட சுற்றுடன் `` passmanager.run (...) `` செயல்படுத்தப்படும்போது இணையாக மாற்றுவதற்கான அம்சம் விண்டோஸின் கீழ் ஆதரிக்கப்படாது. மேலும் விவரங்களுக்கு # 2988 <https://github.com/Qiskit/qiskit-terra/issues/2988> __ ஐப் பார்க்கவும்.
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
`` Qiskit.pulse.channels.SystemTopology`` வகுப்பு `` PulseChannelSpec`` க்கு ஒரு உதவி வகுப்பாகப் பயன்படுத்தப்பட்டது. `` PulseChannelSpec`` நீக்கப்பட்டதோடு, `` BackendConfiguration``க்கான மாற்றங்களும் தேவையற்றதாக இருப்பதால் இது அகற்றப்பட்டது.
0.9 வெளியீட்டில் நீக்கப்பட்ட குவிட்ஸ் மற்றும் கிளாசிக்கல் பிட்களை டூப்பிள் என முன்னர் நீக்கப்பட்ட பிரதிநிதித்துவம் நீக்கப்பட்டது. `` Qubit`` மற்றும் `` Clbit`` பொருள்களின் பயன்பாடு குவிட்ஸ் மற்றும் கிளாசிக்கல் பிட்களைக் குறிக்கும் புதிய வழியாகும்.
ஒற்றை சரம் என அமைக்கப்பட்ட அடிப்படையின் முன்னர் நீக்கப்பட்ட பிரதிநிதித்துவம் நீக்கப்பட்டது. சரங்களின் பட்டியல் புதிய விருப்பமான வழி.
0.9 வெளியீட்டில் நீக்கப்பட்ட "BaseModel.as_dict" முறை "BaseModel.to_dict" முறைக்கு ஆதரவாக நீக்கப்பட்டது.
PulseDefaults இல் (பொதுவாக backend.defaults ()என அணுகப்படுகிறது), "qubit_freq_est" மற்றும் "meas_freq_est" ஆகியவை இப்போது GHz க்கு பதிலாக Hz இல் திரும்புகின்றன. அதாவது புதிய ரிட்டர்ன் மதிப்புகள் 1e9 * அவற்றின் முந்தைய மதிப்பு.
வெந்தயம் <https://pypi.org/project/dill/> __ ஒரு தேவையாக சேர்க்கப்பட்டது. ஒன்றுக்கு மேற்பட்ட சுற்றுக்கு இணையாக `` passmanager.run () `` ஐ இயக்க இது தேவைப்படுகிறது.
முன்பு நீக்கப்பட்ட கேட் `` UBase``, 0.9 வெளியீட்டில் நீக்கப்பட்டது, அகற்றப்பட்டது. அதற்கு பதிலாக `` U3Gate`` என்ற வாயில் பயன்படுத்தப்பட வேண்டும்.
முன்னர் நீக்கப்பட்ட கேட் `` CXBase``, 0.9 வெளியீட்டில் நீக்கப்பட்டது, அகற்றப்பட்டது. அதற்கு பதிலாக `` CnotGate`` என்ற வாயில் பயன்படுத்தப்பட வேண்டும்.
snapshotஎன்ற அறிவுறுத்தல்labelஅளவுருவை மறைமுகமாக சரமாக மாற்ற பயன்படுகிறது. அந்த மாற்றம் நீக்கப்பட்டு, ஒரு சரம் வழங்கப்படாவிட்டால் பிழை எழுப்பப்படுகிறது.முன்னர் நீக்கப்பட்ட கேட் `` U0Gate``, 0.9 வெளியீட்டில் நீக்கப்பட்டது, அகற்றப்பட்டது. தாமதங்களைச் செருகுவதற்கு பதிலாக
IdGateஎன்ற கேட் பயன்படுத்தப்பட வேண்டும்.
தேய்மான குறிப்புகள்¶
`` Qiskit.pulse.CmdDef`` வகுப்பு நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` qiskit.pulse.InstructionScheduleMap`` ஐப் பயன்படுத்த வேண்டும். துடிப்பு இயக்கப்பட்ட அமைப்பிற்கான `` InstructionScheduleMap`` பொருளை `` backend.defaults().instruction_schedules``.
"PulseChannelSpec" நீக்கப்படுகிறது. அதற்கு பதிலாக "பின்முனைஉள்ளமைவு" பயன்படுத்தவும். பின்முனை கட்டமைப்பு பொதுவாக "backend.configuration()" என அணுகப்படுகிறது. உள்ளமைவு PulseChannelSpec இன் பெரும்பாலான செயல்பாடுகளுடன் நீட்டிக்கப்பட்டுள்ளது, சில மாற்றங்களுடன் பின்வருமாறு, '0' ஒரு முன்மாதிரி க்யூபிட் அட்டவணை:
pulse_spec.drives[0] -> config.drive(0) pulse_spec.measures[0] -> config.measure(0) pulse_spec.acquires[0] -> config.acquire(0) pulse_spec.controls[0] -> config.control(0)
இப்போது, சாதனத்திற்கு இல்லாத ஒரு குவிட்டிற்கான சேனலைப் பெற முயற்சி இருந்தால், ஒரு பயனுள்ள விளக்கத்துடன்
BackendConfigurationErrorஎழுப்பப்படும்.பல்ஸ் சேனல்ஸ்பெக்கின் `` memoryslots`` மற்றும் `` registerslots`` முறைகள் பின்தளத்தில் உள்ளமைவுக்கு இடம்பெயரவில்லை. இந்த கிளாசிக்கல் வளங்கள் பின்தளத்தில் அமைப்பின் இயற்பியல் உள்ளமைவால் கட்டுப்படுத்தப்படவில்லை. தயவுசெய்து அவற்றை நேரடியாக நிறுவவும்:
pulse_spec.memoryslots[0] -> MemorySlot(0) pulse_spec.registerslots[0] -> RegisterSlot(0)
qubitsமுறை பின்தளத்தில் உள்ளமைவுக்கு மாற்றப்படவில்லை.qubitsஇன் முடிவை இவ்வாறு உருவாக்கலாம்:[q for q in range(backend.configuration().n_qubits)]
'பல்ஸ்.சேனல்'களில் 'க்யூபிட்' என்ற புதிய வகை க்ரூப் நீக்கப்பட்டுள்ளது. அவை பயன்படுத்தப்படக் கூடாது. பின்எண்ட்கட்டமைப்பு (அல்லது backend.configuration())மூலம் சேனல் <=> qubit வரையிணைப்புகளைப் பெற முடியும்.
`` Qiskit.visualization.circuit_drawer.qx_color_scheme () `` செயல்பாடு நீக்கப்பட்டது. இந்த செயல்பாடு இனி உள்நாட்டில் பயன்படுத்தப்படாது, தற்போதைய IBM QX பாணியை பிரதிபலிக்காது. உள்நாட்டில் ஒரு பாணி கட்டளையை உருவாக்க நீங்கள் இந்த செயல்பாட்டைப் பயன்படுத்தினால், அதிலிருந்து வெளியீட்டைச் சேமித்து அந்த அகராதியை நேரடியாகப் பயன்படுத்த வேண்டும்.
விதிவிலக்கு `` TranspilerAccessError`` நீக்கப்பட்டது. அதே செயல்பாட்டை வழங்குவதற்கு பதிலாக `` TranspilerError`` என்ற மாற்று செயல்பாடு பயன்படுத்தப்படலாம். இந்த மாற்று செயல்பாடு சரியான செயல்பாட்டை வழங்குகிறது, ஆனால் அதிக பொதுவான தன்மையைக் கொண்டுள்ளது.
துடிப்பில் உள்ள இடையகங்கள் நீக்கப்பட்டன. ஒரு நொஜெரோ இடையகம் வழங்கப்பட்டால், அதற்கு பதிலாக தாமதத்தைப் பயன்படுத்த நினைவூட்டலுடன் எச்சரிக்கை வழங்கப்படும். பிற விருப்பங்களில் (0. + 0.j) ஒரு துடிப்பு அறிவுறுத்தலில் மாதிரிகளைச் சேர்ப்பது அல்லது அடுத்த துடிப்பின் தொடக்க நேரத்தை `` அட்டவணை. காலம் + இடையக`` என அமைத்தல் ஆகியவை அடங்கும்.
` சிம்மி.அடிப்படை ` `, ` சிம்ப.எதிர்பார்ப்பு ` ` மற்றும் ` சிம்ப.மாட்ரிக்ஸ் ` வகை ஆசிரியர் அளபுருக்கள் துண்டிக்கப்படுகின்றன மற்றும் ஒரு எதிர்க் வெளியீட்டில் நீக்கப்படும். நீங்கள் உள்ளீட்டை ஒரு ஆதரவு வகைகளில் மாற்ற வேண்டும்:
intfloatcomplexstrnp.ndarray
பிழை திருத்தங்கள்¶
டிரான்ஸ்பைலரில் உள்ள கலெக்ட் 2 க் பிளாக்ஸ் மற்றும் கம்யூட்டேஷன் அனாலிசிஸ் பாஸ்கள் அளவுருவாக்கப்பட்ட வாயில்களைக் கொண்ட சுற்றுகளை செயலாக்க முடியவில்லை, அளவுரு சுற்றுகள் உகப்பாக்கம்_அளவு 2 அல்லது அதற்கு மேல் அனுப்பப்படுவதைத் தடுக்கின்றன. அளவுருக்கள் கொண்ட வாயில்கள் ஒளிபுகாவாக கருத இந்த பாஸ்கள் சரி செய்யப்பட்டுள்ளன.
அலைன்_மெஷர்ஸ் செயல்பாட்டில் ஒரு சிக்கல் இருந்தது, அங்கு அளவீட்டு தூண்டுதல் பருப்பு வகைகளை அக்வைர் பருப்புகளுடன் சரியாக இணைக்கவில்லை, இதன் விளைவாக பிழை ஏற்பட்டது. இது சரி செய்யப்பட்டது.
"numpy.random.seed" இன் பயன்பாடுகள் நீக்கப்பட்டுள்ளன, இதனால் qiskit செயல்பாடுகளின் அழைப்புகள் எதிர்கால அழைப்புகளின் முடிவுகளை பாதிக்காது என்று "numpy.random"
"job.queue_position()" "ஏதுமில்லை" என்று திரும்பும் போது வேலை மானிட்டரில் ஏற்படும் நிலையான இனம் நிலை. 'ஏதுமில்லை' என்பது 'job.queue_position()'' இருந்து ஒரு செல்லுபடியாகும் வருமானம்.
"memory=True" க்கான பின்னணி ஆதரவு இப்போது அந்த kwarg கடந்து போது சரிபார்க்கப்பட்டது. ஆதரிக்கப்படவில்லை என்றால் "QiskitError" முடிவுகள்.
ஒரு இணைப்பு வரைபடம் இல்லாமல் டிரான்ஸ்பைலர் போது, டிரான்ஸ்பைலர் செய்ய சுற்று qubits அளவு எந்த காசோலை இருந்தன. இப்போது டிரான்ஸ்பில் செயல்முறை பின்முனை க்கு சர்க்யூட் ஒதுக்க போதுமான qubits உள்ளதா என்று சரிபார்க்கிறது.
பிற குறிப்புகள்¶
ஒரு இணைப்பு வரைபடத்தை இல்லாமல் மாற்றும் போது, எந்த checkThe "qiskit.result.marginal_counts ()" செயல்பாடு quiskit-ignis "qiskit.ignis.verification.tomography.marginal_counts()' இல் இதே போன்ற பயன்பாட்டு செயல்பாட்டை மாற்றுகிறது, இது எதிர்காலத்தில் quiskit-ignis release.in மின்சுற்று க்கு டிரான்பைல் அளவு. இப்போது டிரான்ஸ்பில் செயல்முறை பின்முனை க்கு சர்க்யூட் ஒதுக்க போதுமான qubits உள்ளதா என்று சரிபார்க்கிறது.
அனைத்து அறிகுறி அளவுரு வெளியீடு வகை ஆதரவு qiskit-terra இருந்து நீக்கப்பட்டது (அல்லது குறிப்பிடப்பட்டுள்ளது என நீக்கப்பட்டது). இதில் "குவாண்டம்சர்க்யூட்" பொருள்கள், குவாம் அஸட் முனைகள் அல்லது "Qobj" பொருள்களில் உள்ள அறிகுறி வகை அளவுருக்கள் அடங்கும்.
ஏர் 0.3¶
எந்த மாற்றமும் இல்லை
பற்றவைப்பு 0.2¶
எந்த மாற்றமும் இல்லை
அக்வா 0.6¶
எந்த மாற்றமும் இல்லை
IBM Q வழங்குபவர் 0.4¶
முன்னுரை¶
0.4.0 விடுதலை முதல் வெளியீடு என்று புதிய IBM Q API இன் அனைத்து அம்சங்களையும் பயன்படுத்துகிறது. குறிப்பாக, ` ` IBMQJob ` ` வகுப்பு, IBM Q லிருந்து அதிக தகவல்களை மீட்க முடியும், மற்றும் ஒரு பணி மேலாளர் வகுப்பு, பெரிய அல்லது சிக்கலான பணிகளின் அதிக அளவு பயன்பாடு அனுமதிக்கிறது. IBM Q அனுபவம் அல்லது QConsole இன்னும் வரலாற்றில் இருந்து மேம்படுத்தப்படவில்லை என்றால், தயவு செய்து IBM Q வழங்குபவர் 0.3 (Qiskit 0.11) விடுதலை குறிப்பிடுவதற்கு மேலும் விவரங்களுக்கு எப்படி மாற்றம் செய்ய வேண்டும். வரலாறு கணக்குகள் இப்பொழுது இந்த விடுதலை ஆதரிக்கப்படாது.
புதிய அம்சங்கள்¶
மாற்றங்களை அனுமதி¶
` ` IBMQJob ` ` வகுப்பு திருத்தப்பட்டுள்ளது, மேலும் இப்போது புதிய அம்சங்களுடன் ஒரு தொலைதூர வேலைகளின் உள்ளடக்கங்களை மேலும் நெருக்கமாக கொண்டு வருகின்றது:
ஒரு வேலையைச் சமர்ப்பிக்கும் போது `` IBMQBackend.run (..., job_name = '...') `` என்பதைக் குறிப்பிடுவதன் மூலம் நீங்கள் இப்போது ஒரு வேலைக்கு ஒரு பெயரை ஒதுக்கலாம். இந்த பெயரை `` IBMQJob.name () `` வழியாக மீட்டெடுக்கலாம் மற்றும் வடிகட்டலுக்குப் பயன்படுத்தலாம்.
வேலையை ஒழுங்குபடுத்தும்போது, வேறுபடி ` job_शेयर_level ` ` அளபுருக்கள் மூலம் வேறுபடும் அளவிலான (உலகளாவிய, ஒவ்வொன்றும், குழு அல்லது திட்டம்) போன்றவற்றோடு இப்போது பிற பயனர்களுடன் பகிர்ந்து கொள்ளலாம்.
` ` IBMQJob ` ` instances now have more attributes, reflecting the contents of the remote IBM Q பணிகள். இது IBM Q API மூலம் அறிமுகப்படுத்தப்பட்ட புதிய குணங்கள் தானாகவே மற்றும் உடனடியாக பயன்படுத்த கிடைக்கும் (உதாரணமாக, ``job.new_api_attribute ` `). புதிய குணங்கள் அவை நிலையாக கருதப்படும் போது முறைகளுக்கு பரிந்துரைக்கப்படும் (உதாரணமாக, ``job.name () ` `).
`. Error_ message () ` ` மேலும் தகவல்களை தரும் ஏன் ஒரு வேலை தோல்வியுற்றது.
` `.queue_position () ` ` ` ` refresh ` ` அளபுருவை ஏற்றுக்கொள்ளும் ஒரு புதுப்பிக்கப்படுகிறது.
` `.result () ` ` ` ` ` ` பகுதி ` ` அளபுருக்கான அளபுருக்கள் ஏற்றுக்கொள்ளும், முழுமையான முடிவுகளையும் திரும்ப ஏற்றுக்கொள்ளும், எந்த வேலைகளில் தோல்வியுற்றது. ` ` get_counts () ` ` ` ` Result ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` ` முடிவுகளுக்கு ஒரு விதிமுறையை உயர்த்தியுள்ளது.
தயவு செய்து மாற்றங்கள் வகுப்பின் சில குறைந்த அளவு மாற்றங்களை உள்ளடக்குகிறது என்று குறிப்பிடுக. நீங்கள் எந்த நிகழ்வுகளையும் கைமுறையாக உருவாக்கினால், குறிப்பு:
கட்டமைப்பின் கையொப்பம் புதிய அம்சங்களுக்காக கணக்கிடப்பட்டுள்ளது.
. சமர்ப்பித்தல் () ` முறையை இனி நேரடியாக அழைக்க முடியாது, மேலும் ஒத்திசைவான `` IBMQBackend.run () `` வழியாக அல்லது வேலை மேலாளர் வழியாக வேலைகள் சமர்ப்பிக்கப்படும் என்று எதிர்பார்க்கப்படுகிறது.
பணி மேலாளர்¶
ஒரு புதிய பணி மேலாளர் (` ` IBMQJobManager ` `) அறிமுகப்படுத்தப்பட்டு, பல சுற்றுச்சூழல் அல்லது பழுப்பு திட்டங்களைக் கொண்டிருக்கும் பணிகளை கையாளுவதற்கு மேல்நிலைப்பள்ளி இயக்கமாகும். பணி மேலாளர் ஒரு தெளிவான இடைமுகத்தை வழங்குவதற்கு, ஒழுங்குபடுத்தும் வேலைகளின் திறமையான அலகுகளாக உள்ளீடு மற்றும் பல்வேறு கூறுகளின் முழு வசதி எடுத்துக்கொள்கிறது. இது அப்போதைய பதிப்புக்களில் விரிவாக்கப்பட்டு, வேலை உள்நுழைக்கு பரிந்துரைக்கப்படும் நுழைவு புள்ளியாக மாறும்.
அதன் ` `.run () ` முறையில், சுற்றுப்பயணங்களின் பட்டியலை பெறுகிறது. ` ` ManagedJobSet நிகழ்வு ` ` ` ` ManagedJobSet உதாரணம் ` `, இது பின்னர் இந்த வேலைகளின் மாநிலங்கள் மற்றும் முடிவுகளையும் தடுக்க பயன்படுகிறது. உதாரணமாக:
from qiskit.providers.ibmq.managed import IBMQJobManager
from qiskit.circuit.random import random_circuit
from qiskit import IBMQ
from qiskit.compiler import transpile
provider = IBMQ.load_account()
backend = provider.backends.ibmq_ourense
circs = []
for _ in range(1000000):
circs.append(random_circuit(2, 2))
transpile(circs, backend=backend)
# Farm out the jobs.
jm = IBMQJobManager()
job_set = jm.run(circs, backend=backend, name='foo')
job_set.statuses() # Gives a list of job statuses
job_set.report() # Prints detailed job information
results = job_set.results()
counts = results.get_counts(5) # Returns data for experiment 5
பின்னணி மாற்றங்கள்¶
வழங்குநர்.பேக்கண்ட்ஸ்`` உறுப்பினர், முன்பு பின்தளத்தில் பட்டியலை வழங்கிய ஒரு செயல்பாடாக இருந்தது, இது ஒரு சேவைக்கு உயர்த்தப்பட்டது. இது முந்தைய வழியில், .பேக்கண்ட்ஸ் () `` முறையாகவும், விரிவாக்கப்பட்ட திறன்களைக் கொண்ட ``.பேக்கண்ட்ஸ் பண்புகளாகவும் பயன்படுத்தப்படலாம் என்பதை இது குறிக்கிறது:
இது அந்தப் பணியாளரால் இருந்து தற்போதைய பின்னணிகளை உள்ளடக்குகிறது. உதாரணமாக:
my_backend = provider.get_backend('ibmq_qasm_simulator')
இதற்கு சமம்:
my_backend = provider.backends.ibmq_qasm_simulator
`` வழங்குநர்.பேக்கண்ட்ஸ்.ஜோப்ஸ் () `` மற்றும் `` வழங்குநர்.
மற்ற மாற்றங்கள்¶
` Backend.properties () `` செயல்பாடு இப்போது விருப்பமான `` தேதிநேர`` அளவுருவை ஏற்றுக்கொள்கிறது. குறிப்பிடப்பட்டால், செயல்பாடு பின்தளத்தில் பண்புகளை மிக நெருக்கமான, ஆனால் குறிப்பிட்ட தேதிநேர வடிப்பானை விட பழையதாக வழங்குகிறது.
சில `` எச்சரிக்கைகள்`` `` லாஜர். எச்சரிக்கை`` செய்திகளுக்கு குறைக்கப்பட்டுள்ளன.
Qiskit 0. 13.0¶
டெரா 0.10.0¶
முன்னுரை¶
0.10.0 விடுதலை பல புதிய அம்சங்கள் மற்றும் பிழை திருத்தங்கள் ஆகியவற்றை உள்ளடக்குகிறது. இந்த விடுதலுக்கான மிகப்பெரிய மாற்றம் சிக்கிட் பயன்படுத்துவதற்கு ஆரம்ப ஆதரவு கூடியது.
புதிய அம்சங்கள்¶
`` குவாண்டம் சிர்குட்`` இல் புதிய முறைகளை அறிமுகப்படுத்தியது, இது ஒரு சுற்று முடிவில் அளவீடுகளை தடையின்றி சேர்க்க அல்லது அகற்ற அனுமதிக்கிறது.
- ` ` அளவு எல்லாம் () ` `
ஒரு `` தடையை`` சேர்க்கிறது, அதன்பிறகு சுற்றுகளில் உள்ள அனைத்து குவிட்டுகளுக்கும் `` அளவீட்டு`` செயல்பாடு சேர்க்கிறது. சுற்றுகளில் உள்ள குவிட்களின் எண்ணிக்கைக்கு சமமான `` கிளாசிக்கல் ரெஜிஸ்டர்`` அளவை உருவாக்குகிறது, இது அளவீடுகளை சேமிக்கிறது.
- ` ` அளவு செயலில் () ` `
சுற்றுகளில் உள்ள அனைத்து செயலில் உள்ள குவிட்டுகளுக்கும் ஒரு `` தடை`` ஐத் தொடர்ந்து `` அளவீட்டு`` செயல்பாட்டைச் சேர்க்கிறது. ஒரு குவிட் செயலில் குறைந்தது ஒரு செயல்பாட்டைக் கொண்டிருந்தால். சுற்றுகளில் செயலில் உள்ள குவிட்களின் எண்ணிக்கைக்கு சமமான ஒரு `` கிளாசிக்கல் ரெஜிஸ்டர்`` அளவை உருவாக்குகிறது, இது அளவீடுகளை சேமிக்கிறது.
- அகற்று_ இறுதி_ அளவீடுகள் () `
அனைத்து இறுதி அளவீடுகளையும் நீக்குகிறது மற்றும் ஒரு சுற்றிலிருந்து `` தடை`` க்கு முன்னால். தடைகள் மற்றும் பிற அளவீடுகளைத் தவிர்த்து, வேறு எந்த நடவடிக்கையும் பின்பற்றப்படாவிட்டால், ஒரு அளவீட்டு "இறுதி" என்று கருதப்படுகிறது. அளவீடுகள் அகற்றப்பட்ட பிறகு, `` கிளாசிக்கல் ரெஜிஸ்டர்`` இல் உள்ள கிளாசிக்கல் பிட்கள் அனைத்தும் செயலற்றதாக இருந்தால் (அவற்றுடன் எந்த நடவடிக்கைகளும் இணைக்கப்படவில்லை), பின்னர் `` கிளாசிக்கல் ரெஜிஸ்டர்`` அகற்றப்படும்.
எடுத்துக்காட்டுகள்:
# Using measure_all() circuit = QuantumCircuit(2) circuit.h(0) circuit.measure_all() circuit.draw() # A ClassicalRegister with prefix measure was created. # It has 2 clbits because there are 2 qubits to measure ┌───┐ ░ ┌─┐ q_0: |0>┤ H ├─░─┤M├─── └───┘ ░ └╥┘┌─┐ q_1: |0>──────░──╫─┤M├ ░ ║ └╥┘ measure_0: 0 ═════════╩══╬═ ║ measure_1: 0 ════════════╩═ # Using measure_active() circuit = QuantumCircuit(2) circuit.h(0) circuit.measure_active() circuit.draw() # This ClassicalRegister only has 1 clbit because only 1 qubit is active ┌───┐ ░ ┌─┐ q_0: |0>┤ H ├─░─┤M├ └───┘ ░ └╥┘ q_1: |0>──────░──╫─ ░ ║ measure_0: 0 ═════════╩═ # Using remove_final_measurements() # Assuming circuit_all and circuit_active are the circuits from the measure_all and # measure_active examples above respectively circuit_all.remove_final_measurements() circuit_all.draw() # The ClassicalRegister is removed because, after the measurements were removed, # all of its clbits were idle ┌───┐ q_0: |0>┤ H ├ └───┘ q_1: |0>───── circuit_active.remove_final_measurements() circuit_active.draw() # This will result in the same circuit ┌───┐ q_0: |0>┤ H ├ └───┘ q_1: |0>─────ஆயுதப் பக்கங்களின் பின்புலத்தைக் கொண்டு செயற்படுத்துவதற்கு ஆரம்ப ஆதரவு சேர்க்கப்பட்டது.
ஒரு Rxx வாயில் (rxx) மற்றும் ஒரு உலகளாவிய Mølmer-Sørensen gate (ms) தரப்பட்ட வாயுத் தளத்தில் சேர்க்கப்பட்டுள்ளது.
Rxx / Rx / Ry டிகம்போசருக்கு ஒரு முடிச்சு `` cnot_rxx_decompose`` மற்றும் ஒற்றை குவிட் யூலர் கோண டிகம்போசர் `` OneQubitEulerDecomposer`` ஆகியவை `` குவாண்டம்_இன்ஃபோ.சிந்தெசிஸ்`` தொகுதிக்கு சேர்க்கப்பட்டுள்ளன.
U3 மற்றும் Cnot வாயில்களில் வரையறுக்கப்பட்ட சுற்றுகளை Rxx, Ry மற்றும் Rx இல் வரையறுக்கப்பட்ட ஒரு சுற்றுக்குள் சேர்க்க ஒரு டிரான்ஸ்பைலர் பாஸ் `` MSBasisDecomposer`` சேர்க்கப்பட்டுள்ளது. இந்த பாஸ் பின்தளத்தில் முன்னமைக்கப்பட்ட பாஸ் மேலாளர்களில் சேர்க்கப்படும், இதில் 'rxx' வாயில் அவற்றின் ஆதரவு அடிப்படை வாயில்களில் அடங்கும்.
`` Qiskit.test.mock`` இல் உள்ள பின்தளத்தில் இப்போது உண்மையான சாதன அளவீட்டு தரவின் ஸ்னாப்ஷாட் உள்ளது. ஒவ்வொரு பின்தளத்தில் உள்ள `` பண்புகள் () `` முறை வழியாக இதை அணுகலாம். சத்தம்-தகவமைப்பு டிரான்ஸ்பைலர் பாஸ்கள் அல்லது உருவகப்படுத்துதலுக்கான சாதன இரைச்சல் மாதிரிகள் போன்ற பின்தளத்தில் பண்புகளைப் பொறுத்து எந்த குறியீட்டையும் சோதிக்க இதைப் பயன்படுத்தலாம். இது நேரடி பின்தளத்தில் செல்ல வேண்டிய அவசியமின்றி வேகமான சோதனை மற்றும் மேம்பாட்டு சுழற்சியை உருவாக்கும்.
பகுதி முடிவுகளை பகுதி முடிவுகளை வழங்க அனுமதிக்கிறது. செல்லுபடியாகும் முடிவுத் திட்டம் ஏற்றப்பட்டால், அதில் சில சோதனைகள் வெற்றிபெற்றன மற்றும் தோல்வியுற்றன, இது வெற்றிகரமான சோதனைகளிலிருந்து தரவை அணுக அனுமதிக்கிறது, அதே நேரத்தில் தோல்வியுற்ற சோதனைகளுக்கு விதிவிலக்கு எழுப்புவதோடு தோல்வியுற்ற முடிவுகளுக்கு பொருத்தமான பிழை செய்தியைக் காண்பிக்கும்.
பின்வரும் காட்சிப்படுத்தல் செயல்பாடுகளில்
ax_மற்றும் `` ax_imag`` குவார்க் சேர்க்கப்பட்டுள்ளன:qiskit.visualization.plot_histogramqiskit.visualization.plot_state_paulivecqiskit.visualization.plot_state_qsphere`` qiskit.visualization.circuit_drawer`` (`` mpl`` பின்தளத்தில் மட்டும்)
`` qiskit.QuantumCircuit.draw`` (`` mpl`` பின்தளத்தில் மட்டும்)
இந்த குவார்க் காட்சிப்படுத்தல் செயல்பாடுகளுக்கு `` matplotlib.axes.Axes`` பொருளில் அனுப்ப பயன்படுகிறது. இந்த காட்சிப்படுத்தல் செயல்பாடுகளை ஒரு பெரிய காட்சிப்படுத்தல் பணிப்பாய்வுகளில் ஒருங்கிணைக்க இது உதவுகிறது. மேலும், ஒரு ax குவார்க் குறிப்பிடப்பட்டால், காட்சிப்படுத்தல் செயல்பாடுகளிலிருந்து திரும்ப முடியாது.
பின்வரும் காட்சிப்படுத்தல் செயல்பாடுகளில்
ax_மற்றும் `` ax_imag`` குவார்க் சேர்க்கப்பட்டுள்ளன:qiskit.visualization.plot_state_hintonqiskit.visualization.plot_state_city
இந்த புதிய கார்குகள் பிற காட்சிப்படுத்தல் செயல்பாடுகளுக்கு புதிதாக சேர்க்கப்பட்ட `` ax`` குவார்க்குகளைப் போலவே செயல்படுகின்றன. இருப்பினும், இந்த அடுக்கு இரண்டு அச்சுகளைப் பயன்படுத்துகிறது (ஒன்று உண்மையான கூறுக்கு, மற்றொன்று கற்பனைக் கூறுக்கு). இரண்டு குவார்க்குகளை வைத்திருப்பது எப்போதும் இரண்டையும் செய்வதற்குப் பதிலாக ஒரு கூறுகளுக்கு மட்டுமே காட்சிப்படுத்தலை உருவாக்குவதற்கான நெகிழ்வுத்தன்மையை வழங்குகிறது. உதாரணத்திற்கு:
from matplotlib import pyplot as plt from qiskit.visualization import plot_state_hinton ax = plt.gca() plot_state_hinton(psi, ax_real=ax)
உண்மையான கூறு ஒரு சதி மட்டுமே உருவாக்க வேண்டும்.
கொடுக்கப்பட்ட பாஸ் மேலாளரை இப்போது புதிய முறை replace மூலம் திருத்தலாம். பாஸ் மேலாளரில் ஒரு குறிப்பிட்ட கட்டத்தை மாற்ற இந்த முறை அனுமதிக்கிறது, இது முன்னமைக்கப்பட்ட பாஸ் மேலாளர்களுடன் கையாளும் போது எளிது. எடுத்துக்காட்டாக, தேர்வுமுறை நிலை 0 இல் பயன்படுத்தப்படும் பாஸ் மேலாளரின் தளவமைப்பு தேர்வாளரைத் திருத்துவோம்:
from qiskit.transpiler.preset_passmanagers.level0 import level_0_pass_manager from qiskit.transpiler.transpile_config import TranspileConfig pass_manager = level_0_pass_manager(TranspileConfig(coupling_map=CouplingMap([[0,1]]))) pass_manager.draw()
[0] FlowLinear: SetLayout [1] Conditional: TrivialLayout [2] FlowLinear: FullAncillaAllocation, EnlargeWithAncilla, ApplyLayout [3] FlowLinear: Unroller
தளவமைப்பு தேர்வு [1] கட்டத்தில் அமைக்கப்பட்டுள்ளது. இதை DenseLayout உடன் மாற்றுவோம்:
from qiskit.transpiler.passes import DenseLayout pass_manager.replace(1, DenseLayout(coupling_map), condition=lambda property_set: not property_set['layout']) pass_manager.draw()
[0] FlowLinear: SetLayout [1] Conditional: DenseLayout [2] FlowLinear: FullAncillaAllocation, EnlargeWithAncilla, ApplyLayout [3] FlowLinear: Unroller
எந்தவொரு நிபந்தனையும் இல்லாமல் அதை மாற்ற விரும்பினால், நீங்கள் தொகுப்பு உருப்படி குறுக்குவழியைப் பயன்படுத்தலாம்:
pass_manager[1] = DenseLayout(coupling_map) pass_manager.draw()
[0] FlowLinear: SetLayout [1] FlowLinear: DenseLayout [2] FlowLinear: FullAncillaAllocation, EnlargeWithAncilla, ApplyLayout [3] FlowLinear: Unroller
ஒரு புதிய துடிப்பு கட்டளையை அறிமுகப்படுத்தியது `` Delay`` இது ஒரு துடிப்பு `` Schedule`` இல் செருகப்படலாம். இந்த கட்டளை `` duration`` ஏற்றுக்கொள்கிறது, மேலும் இது எந்த `` Channel``லுக்கும் சேர்க்கப்படலாம். பிற கட்டளைகள் தாமதத்தின் போது சேனலில் திட்டமிடப்படாமல் போகலாம்.
மற்ற துடிப்பு கட்டளைகளைப் போலவே தாமதத்தையும் சேர்க்கலாம். உதாரணத்திற்கு:
from qiskit import pulse from qiskit.pulse.utils import pad dc0 = pulse.DriveChannel(0) delay = pulse.Delay(1) test_pulse = pulse.SamplePulse([1.0]) sched = pulse.Schedule() sched += test_pulse(dc0).shift(1) # build padded schedule by hand ref_sched = delay(dc0) | sched # pad schedule padded_sched = pad(sched) assert padded_sched == ref_sched
ஒருவர் கூடுதல் சேனல்களைத் திணிக்கலாம் மற்றும் திண்டுக்கு ஒரு நேரம் வரை அனுப்பலாம், எடுத்துக்காட்டாக:
from qiskit import pulse from qiskit.pulse.utils import pad dc0 = pulse.DriveChannel(0) dc1 = pulse.DriveChannel(1) delay = pulse.Delay(1) test_pulse = pulse.SamplePulse([1.0]) sched = pulse.Schedule() sched += test_pulse(dc0).shift(1) # build padded schedule by hand ref_sched = delay(dc0) | delay(dc1) | sched # pad schedule across both channels until up until the first time step padded_sched = pad(sched, channels=[dc0, dc1], until=1) assert padded_sched == ref_sched
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
`` Qiskit.QuantumCircuit`` பொருட்களின்
dataபண்புக்கூறுக்கான பணிகள் மற்றும் மாற்றங்கள் இப்போது `` QuantumCircuit`` ஏபிஐ முழுவதும் பயன்படுத்தப்படும் அதே விதிகளைப் பின்பற்றி சரிபார்க்கப்படுகின்றன. சுற்றுகள் API இன் செயல்திறனை மேம்படுத்துவதற்காக இது செய்யப்பட்டது, ஏனெனில்dataபண்பு அறியப்பட்ட வடிவத்தில் இருப்பதாக இப்போது நாம் கருதலாம். சர்க்யூட் பொருளின் `` data`` பண்புக்கூற்றை நீங்கள் கைமுறையாக மாற்றியமைத்திருந்தால், உங்கள் மாற்றங்கள் சூழலில் உள்ள அறிவுறுத்தல்களின் பட்டியலைத் தவிர வேறு தரவு கட்டமைப்பை விளைவித்தால் இனி இயங்காது `` [(instruction, qargs, cargs)] ``தேர்வுமுறை நிலை 2 க்கான டிரான்ஸ்பைலர் இயல்புநிலை பாஸ்மேனேஜர் இப்போது `` NoiseAdaptiveLayout`` க்கு பதிலாக இயல்பாக `` DenseLayout`` தளவமைப்பு தேர்வு பொறிமுறையைப் பயன்படுத்துகிறது. `` DenseLayout`` பாஸும் சத்தம்-விழிப்புணர்வுக்குரியதாக மாற்றப்பட்டுள்ளது.
நீக்கப்பட்ட `` DeviceSpecification`` வகுப்பு நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` PulseChannelSpec`` ஐப் பயன்படுத்த வேண்டும். எடுத்துக்காட்டாக, நீங்கள்:
device = pulse.PulseChannelSpec.from_backend(backend) device.drives[0] # for DeviceSpecification, this was device.q[0].drive device.memoryslots # this was device.mem
நீக்கப்பட்ட தொகுதி `` qiskit.pulse.ops`` அகற்றப்பட்டது. `` Schedule`` மற்றும்
Instructionமுறைகளை நேரடியாகப் பயன்படுத்தவும். எடுத்துக்காட்டாக,:ops.union(schedule_0, schedule_1) ops.union(instruction, schedule) # etc
அதற்கு பதிலாக:: ஐப் பயன்படுத்தவும்:
schedule_0.union(schedule_1) instruction.union(schedule)
இதே முறை மற்ற
ops` செயல்பாடுகளுக்கும் பொருந்தும்: ``insert,shift,append, andflatten.
தேய்மான குறிப்புகள்¶
கிளாசிக்கல் கட்டுப்பாட்டுக்கு `` qiskit.circuit.Instruction`` இன் `` control`` சொத்தைப் பயன்படுத்துவது இப்போது நீக்கப்பட்டது. எதிர்காலத்தில் இந்த சொத்து குவாண்டம் கட்டுப்பாட்டுக்கு பயன்படுத்தப்படும். கிளாசிக்கல் நிபந்தனைக்குட்பட்ட செயல்பாடுகள் அதற்கு பதிலாக `` qiskit.circuit.Instruction`` இன்
conditionசொத்தால் கையாளப்படும்.`` Qiskit.qasm.node.Node`` வகை பொருளைக் கொண்டு `` qiskit.circuit.Instruction`` அளவுருக்களை அமைப்பதற்கான ஆதரவு நீக்கப்பட்டது. புதிய
Instructionபொருளைத் தொடங்குவதற்கு முன் அல்லது `` instruction.params'` செட்டரை அழைப்பதற்கு முன்பு, `` Node`` பொருள்களை முன்னர் அளவுருக்களாகப் பயன்படுத்தப்பட்டவை ஆதரிக்கப்பட்ட வகையாக மாற்றப்பட வேண்டும். ஆதரிக்கப்படும் வகைகள் `` int``, `` float``,complex, `` str``, `` qiskit.circuit.ParameterExpression``, அல்லது `` numpy.ndarray``.Qiskit 0.9.0 வெளியீட்டில்,
(register, index)வடிவத்தின் டுப்பில்களிலிருந்து மாற்றப்பட்ட பிட்களின் பிரதிநிதித்துவம் (குவிட்ஸ் மற்றும் கிளாசிக்கல் பிட்கள்) `` qiskit.circuit.Qubit`` மற்றும் ` qiskit.circuit.Clbit`. எல்லாவற்றையும் டூப்பிள்ஸில் இருந்து பொருள்களாக மாற்றுவதால், ஒரு பாரம்பரிய டூப்பிள் மற்றும் பிட் வகுப்புகளுக்கு இடையிலான சமத்துவத்தை ஒப்பிடும் பின்னோக்கி பொருந்தக்கூடிய தன்மை ஆதரிக்கப்பட்டது. இந்த ஆதரவு இப்போது நீக்கப்பட்டது மற்றும் எதிர்காலத்தில் அகற்றப்படும். முன்னோக்கி நகர்த்துவதற்கு பதிலாக பிட் வகுப்புகளை எல்லாம் பயன்படுத்த வேண்டும்.`` mpl`` வெளியீடு `` qiskit.QuantumCircuit.draw () `` அல்லது `` qiskit.visualization.circuit_drawer () `` மற்றும் `` style`` குவார்க் பயன்படுத்தப்படும்போது, ஆதரிக்கப்படாத அகராதியில் கடந்து செல்லும் போது
styleஅகராதியின் ஒரு பகுதியாக விசைகள் இப்போது நீக்கப்பட்டன. இந்த அறியப்படாத வாதங்கள் முன்பு அமைதியாக புறக்கணிக்கப்பட்ட இடத்தில், எதிர்காலத்தில், ஆதரிக்கப்படாத விசைகள் விதிவிலக்கை எழுப்புகின்றன.`` Qiskit.QuantumCircuit.draw () `` முறைக்கான
line lenghtகுவார்க் மற்றும் உரை வெளியீட்டு பயன்முறையுடன் `` qiskit.visualization.circuit_drawer () `` செயல்பாடு நீக்கப்பட்டது. இதுfoldகுவார்க்கால் மாற்றப்பட்டுள்ளது, இது உரை வெளியீட்டு பயன்முறையில் ஒரே மாதிரியாக செயல்படும் (ஆனால் இப்போது எம்.பி.எல் வெளியீட்டு பயன்முறையையும் ஆதரிக்கிறது). எதிர்கால வெளியீட்டில் `` line_length`` அகற்றப்படும், எனவே அதற்கு பதிலாக `` fold`` ஐப் பயன்படுத்த அழைப்புகள் புதுப்பிக்கப்பட வேண்டும்."Style" உள்ள "fold" புலம் "qiskit. QuantumCircuit.draw ()'' க்கான kwarg dict முறை மற்றும் "qiskit.visualization.circuit_drawer()'' செயல்பாடு நீக்கப்பட்டுள்ளது. இரண்டு செயல்பாடுகளிலும் ''fold'' க்வார்க் மாற்றப்பட்டுள்ளது.இந்த க்வார்க் stlye dict-ல் துறையில் ஒரு மாதிரி யாக நடந்து.
பிழை திருத்தங்கள்¶
அனைத்து வகையான சர்க்யூட் வரைபடத்திற்கும் அடிப்படையான வழிமுறைகள் அடுக்கு வலது / இடது நியாயப்படுத்தலுக்கு மாற்றப்பட்டுள்ளது. இது சில நேரங்களில் வெளியீட்டில் விளைகிறது, இது முந்தைய பதிப்புகளில் ரெண்டரிங் செய்வதற்கு இடவியல் ரீதியாக சமமானது, ஆனால் முன்னர் வழங்கப்பட்டதை விட பார்வை வித்தியாசமானது. வெளியீடு # 2802 <https://github.com/Qiskit/qiskit-terra/issues/2802> _
துடிப்பு Qobj இன் `` QobjExperimentHeader`` இல் `` மெமரி_ஸ்லாட்டுகளை`` சேர்க்கவும். இது துடிப்பு சோதனைகளின் `` அளவீட்டு_ நிலை = 2`` முடிவுகளின் தரவு வடிவமைப்பில் ஒரு பிழையை சரிசெய்கிறது. அளவிடப்பட்ட குவாண்டம் நிலைகள் `` மெமரி_ஸ்லாட்டுகள்`` க்கு அமைக்கப்பட்ட எண்ணின் அடிப்படையில் பூஜ்ஜிய திணிப்புடன் ஒரு பிட் சரமாகத் திரும்பும்.
Rzz வாயிலில் சமச்சீர்மையை பிரதிபலிக்க cu1 வாயிலுடன் பொருந்துமாறு லேடெக்ஸ் சர்க்யூட் டிராயரில் rzz கேட்டின் காட்சிப்படுத்தல் சரி செய்யப்பட்டது. பிழைத்திருத்தம் qcircuit லேடக்ஸ் தொகுப்பின் cds கட்டளையை அடிப்படையாகக் கொண்டது. சிக்கல் # 1957 <https://github.com/Qiskit/qiskit-terra/issues/1957> _
பிற குறிப்புகள்¶
`` matplotlib.figure.Figure`` காட்சிப்படுத்தல் செயல்பாடுகளால் திரும்பிய பொருள்கள் இனி இயல்பாகவே மூடப்படாது. கட்டமைக்கப்பட்ட மேட்லோட்லிப் பின்தளத்தில் இன்லைன் ஜூபிட்டர் பின்தளத்தில் இருந்தால் (
% மேட்லோட்லிப் இன்லைன்அல்லது% மேட்லோட்லிப் நோட்புக்உடன் அமைக்கப்பட்டால்) திரும்பிய உருவப் பொருள்கள் மூடப்படும். ஜூபிட்டர் நோட்புக்குகளில் நகல் வெளியீடுகளைத் தவிர்ப்பதற்காக வெளியீட்டு எண்ணிக்கை பொருள்கள் இந்த பின்தளத்தில் இன்னும் மூடப்பட்டுள்ளன (அதனால்தான் `` Figure.close () `` முதலில் சேர்க்கப்பட்டது).
ஏர் 0.3¶
எந்த மாற்றமும் இல்லை
பற்றவைப்பு 0.2¶
எந்த மாற்றமும் இல்லை
அக்வா 0.6¶
எந்த மாற்றமும் இல்லை
IBM Q Provider 0.3¶
எந்த மாற்றமும் இல்லை
Qiskit 0.12.0¶
Terra 0.9¶
முன்னுரை¶
0.9 வெளியீட்டில் பல புதிய அம்சங்கள் மற்றும் பல பிழைத் திருத்தங்கள் உள்ளன. இந்த வெளியீட்டிற்கான மிகப்பெரிய மாற்றங்கள் பாஸ்மேனேஜர்களுக்கான புதிய பிழைத்திருத்த திறன்கள் ஆகும். பாஸ்மேனேஜரைக் காட்சிப்படுத்துவதற்கான ஒரு செயல்பாடு, பாஸ்மேனேஜருக்கு கால்பேக் செயல்பாட்டைச் சேர்க்கும் திறன் மற்றும் பாஸ்மேனேஜரில் இயங்கும் பாஸ்களின் பதிவு ஆகியவை இதில் அடங்கும். கூடுதலாக, இந்த வெளியீடு உங்கள் சுற்றுக்கான ஆரம்ப தளவமைப்பை அமைக்கும் வழியை தரப்படுத்துகிறது. எனவே இப்போது நீங்கள் `` qiskit.compiler.transpile () `` மற்றும் `` qiskit.execute () `` ஆகியவற்றில் உள்ள `` initial_layout`` குவார்க் அளவுருவைப் பயன்படுத்தலாம், மேலும் சுற்றுகளில் உள்ள குவிட்கள் ஆசை வினாடிகளில் அமைக்கப்படும் சாதனம். ஒரு தளவமைப்புடன் கடத்தப்பட்ட ஒரு சுற்றுவட்டத்தைக் காட்சிப்படுத்தும்போது சுற்றுகளின் காட்சிப்படுத்தல் இப்போது இதை தெளிவாகக் காண்பிக்கும்.
புதிய அம்சங்கள்¶
ஒரு `` DAGCircuit`` பொருள் (அதாவது செயல்பாட்டு சார்புகள் வெளிப்படையாக இருக்கும் ஒரு குவாண்டம் சிர்குட்டின் வரைபட பிரதிநிதித்துவம்) இப்போது
.draw()முறை மூலம் காட்சிப்படுத்தப்படலாம். இது கிஸ்கிட்டின் எளிதான காட்சிப்படுத்தல் தத்துவத்துடன் ஒத்துப்போகிறது..draw()முறையை ஆதரிக்கும் பிற பொருள்கள்QuantumCircuit,PassManager, மற்றும்Schedule.கொடுக்கப்பட்ட பின்தளத்தில் பிழை வரைபடத்தைத் திட்டமிட புதிய காட்சிப்படுத்தல் செயல்பாடு `` qiskit.visualization.plot_error_map () `` சேர்க்கப்பட்டது. இது qiskit-ibmq- வழங்குநரிடமிருந்து ஒரு பின்தளத்தில் பொருளை எடுக்கும், மேலும் அந்த சாதனத்திற்கான தற்போதைய பிழை வரைபடத்தை உருவாக்கும்.
`` Qiskit.QuantumCircuit.draw () `` மற்றும் `` qiskit.visualization.circuit_drawer () `` இரண்டும் தளவமைப்பு தகவலுடன் காட்சிப்படுத்தலில் உள்ள வினாக்களைக் குறிக்க இப்போது துணைபுரிகின்றன. வரையப்பட்ட
QuantumCircuitபொருள் தளவமைப்பு மெட்டாடேட்டாவை உள்ளடக்கியிருந்தால் (இது வழக்கமாகtranspile()அழைப்புகளிலிருந்து சுற்று வெளியீட்டில் மட்டுமே அமைக்கப்படுகிறது) பின்னர் இயல்பாகவே அந்த தளவமைப்பு வரைபடத்தில் காண்பிக்கப்படும். இது அனைத்து சர்க்யூட் டிராயர் பின்தளத்தில் செய்யப்படுகிறது. உதாரணத்திற்கு:from qiskit import ClassicalRegister, QuantumCircuit, QuantumRegister from qiskit.compiler import transpile qr = QuantumRegister(2, 'userqr') cr = ClassicalRegister(2, 'c0') qc = QuantumCircuit(qr, cr) qc.h(qr[0]) qc.cx(qr[0], qr[1]) qc.y(qr[0]) qc.x(qr[1]) qc.measure(qr, cr) # Melbourne coupling map coupling_map = [[1, 0], [1, 2], [2, 3], [4, 3], [4, 10], [5, 4], [5, 6], [5, 9], [6, 8], [7, 8], [9, 8], [9, 10], [11, 3], [11, 10], [11, 12], [12, 2], [13, 1], [13, 12]] qc_result = transpile(qc, basis_gates=['u1', 'u2', 'u3', 'cx', 'id'], coupling_map=coupling_map, optimization_level=0) qc.draw(output='text')
:: போன்ற வரைபடத்தைக் கொடுக்கும்:
┌──────────┐┌──────────┐┌───┐┌──────────┐┌──────────────────┐┌─┐ (userqr0) q0|0>┤ U2(0,pi) ├┤ U2(0,pi) ├┤ X ├┤ U2(0,pi) ├┤ U3(pi,pi/2,pi/2) ├┤M├─── ├──────────┤└──────────┘└─┬─┘├──────────┤└─┬─────────────┬──┘└╥┘┌─┐ (userqr1) q1|0>┤ U2(0,pi) ├──────────────■──┤ U2(0,pi) ├──┤ U3(pi,0,pi) ├────╫─┤M├ └──────────┘ └──────────┘ └─────────────┘ ║ └╥┘ (ancilla0) q2|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla1) q3|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla2) q4|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla3) q5|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla4) q6|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla5) q7|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla6) q8|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla7) q9|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla8) q10|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla9) q11|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla10) q12|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ (ancilla11) q13|0>──────────────────────────────────────────────────────────────╫──╫─ ║ ║ c0_0: 0 ══════════════════════════════════════════════════════════════╩══╬═ ║ c0_1: 0 ═════════════════════════════════════════════════════════════════╩═இடமாற்றம் செய்யப்பட்ட சுற்றுகளில் (அல்லது தளவமைப்பு தொகுப்பைக் கொண்ட வேறு ஏதேனும் சுற்றுகள்) தளவமைப்பு காண்பிக்கப்பட விரும்பவில்லை எனில், இரண்டு செயல்பாடுகளுக்கும் ஒரு புதிய பூலியன் குவார்க் உள்ளது, `` with_layout`` (இது இயல்புநிலை
True), இது எப்போதுFalseஎன அமைத்தால் வெளியீட்டு சுற்றுகளில் தளவமைப்பு சிறுகுறிப்பை முடக்கும்.DAGCircuit இன் மிக நீண்ட பாதையில் செயல்படும் எண்ணிக்கையை மீட்டெடுக்க ஒரு புதிய பகுப்பாய்வு பாஸ் `` CountOpsLongest`` சேர்க்கப்பட்டது. பயன்படுத்தும்போது, சொத்து தொகுப்பு அகராதியில் `` count_ops_longest_path`` விசையைச் சேர்க்கும். இதைப் போன்ற ஏதாவது ஒன்றை உங்கள் பாஸ்மேனேஜரில் சேர்க்கலாம்:
from qiskit.transpiler.passes import CountOpsLongestPath from qiskit.transpiler.passes import CxCancellation from qiskit.transpiler import PassManager pm = PassManager() pm.append(CountOpsLongestPath())
பின்னர் சொத்து தொகுப்பு மதிப்பு வழியாக மிக நீண்ட பாதையை அணுகவும்:
pm.append( CxCancellation(), condition=lambda property_set: property_set[ 'count_ops_longest_path'] < 5)
இது மிக நீண்ட பாதையின் அடிப்படையில் அந்த பாஸில் ஒரு நிபந்தனையை அமைக்கும்.
இரண்டு புதிய செயல்பாடுகள், `` sech () `` மற்றும் `` sech_deriv () `` துடிப்பு நூலக தொகுதிக்கு `` qiskit.pulse.pulse_lib` அசாதாரணமான ஹைபர்போலிக் செகண்ட் `` சாம்பிள் பல்ஸ்`` பொருள் மற்றும் வழக்கத்திற்கு மாறான ஹைப்பர்போலிக் செகண்ட் டெர்வியேட்டிவ் `` சாம்பிள் பல்ஸ்`` பொருள்களை உருவாக்குவதற்கு.
`` QuantumCircuit.draw () `` முறை மற்றும் `` qiskit.visualization.circuit_drawer () `` செயல்பாட்டில் ஒரு புதிய குவார்க் விருப்பம் `` செங்குத்து_குறிப்பு`` சேர்க்கப்பட்டது. இந்த விருப்பம் `` உரை`` பின்தளத்தில் மட்டுமே செயல்படும். வெளியீட்டு காட்சிப்படுத்தல் மூலம் எவ்வளவு செங்குத்து இடம் பயன்படுத்தப்படுகிறது என்பதை சரிசெய்ய இந்த விருப்பத்தை `` உயர்``, `` நடுத்தர`` (இயல்புநிலை) அல்லது `` குறைந்த`` என அமைக்கலாம்.
`` QuantumCircuit.draw () `` முறை மற்றும் `` qiskit.visualization.circuit_drawer () `` செயல்பாட்டில் ஒரு புதிய குவார்க் பூலியன் விருப்பம் `` idle_wires`` சேர்க்கப்பட்டது. இது அனைத்து அலமாரியின் பின்தளத்தில் வேலை செய்கிறது. `` ஐட்லி_வைர்ஸ்`` ஒரு டிராயரில் தவறாக அமைக்கப்பட்டால், டிராயர் வெளியீட்டு குவாண்டம் சர்க்யூட் காட்சிப்படுத்தலில் எந்த சுற்று கூறுகளும் இல்லாத எந்த பிட்களையும் வரையாது.
புதிய பாஸ்மேனேஜர் விஷுவலைசர் செயல்பாடு `` qiskit.visualization.pass_mamanger_drawer () `` சேர்க்கப்பட்டது. இந்த செயல்பாடு ஒரு பாஸ்மேனேஜர் பொருளில் எடுக்கும் மற்றும் பாஸ்மேனேஜரில் இயங்கும் அனைத்து பாஸ்களின் ஓட்ட கட்டுப்பாட்டு வரைபடத்தையும் உருவாக்கும்.
ஒரு பாஸ்மேனேஜரை உருவாக்கும்போது, ஒவ்வொரு பாஸும் செயல்படுத்தப்பட்ட பின் குறிப்பிடப்பட்டால் இயக்கப்படும் என்று ஒரு அழைப்பு செயல்பாட்டைக் குறிப்பிடலாம். இந்த செயல்பாடு ஒவ்வொரு அழைப்பிலும் ஒவ்வொரு பாஸ் மரணதண்டனைக்குப் பிறகு பாஸ் மேலாளரின் நிலையுடன் ஒரு குவார்க் தொகுப்பை அனுப்பும். தற்போது இந்த குவார்க்குகள்:
pass_(Pass): பாஸ் இயக்கப்படுகிறது` ` dag ` ` ` (` DAGCircuit ` `): பாட்டின் dag வெளியீடு
time(float): பாஸை இயக்க நேரம்property_set(PropertySet): சொத்து தொகுப்புcount(int): பாஸ் செயல்படுத்தலுக்கான குறியீடு
இருப்பினும், இந்த வாதங்கள் 0.9 வெளியீட்டிற்கு அமைக்கப்பட்டிருக்கும்போது அவை பாஸ் மேலாளரின் உள்ளகங்களை அம்பலப்படுத்துகின்றன மற்றும் எதிர்கால வெளியீட்டில் மாற்றத்திற்கு உட்பட்டுள்ளன என்பது கவனிக்கத்தக்கது.
எடுத்துக்காட்டாக, ஒரு அழைப்பு செயல்பாட்டை உருவாக்க இதைப் பயன்படுத்தலாம், இது ஒவ்வொரு பாஸும் செயல்படுத்தப்பட்ட பின் சுற்று வெளியீட்டைக் காண்பிக்கும்:
from qiskit.transpiler import PassManager def my_callback(**kwargs): print(kwargs['dag']) pm = PassManager(callback=my_callback)
கூடுதலாக ``qiskit.compiler.transpile () ``:: ஐப் பயன்படுத்தும் போது நீங்கள் திரும்ப அழைக்கும் செயல்பாட்டைக் குறிப்பிடலாம்:
from qiskit.compiler import transpile def my_callback(**kwargs): print(kwargs['pass']) transpile(circ, callback=my_callback)
Qiskit.pulse.Scheduleவகுப்பில் ஒரு புதிய முறை ``filter() `` சேர்க்கப்பட்டது. இது ஒரு அட்டவணையில் வழிமுறைகளை வடிகட்ட உதவுகிறது. எடுத்துக்காட்டாக, அறிவுறுத்தல் வகை மூலம் வடிகட்டுதல்:from qiskit.pulse import Schedule from qiskit.pulse.commands import Acquire from qiskit.pulse.commands import AcquireInstruction from qiskit.pulse.commands import FrameChange sched = Schedule(name='MyExperiment') sched.insert(0, FrameChange(phase=-1.57)(device)) sched.insert(60, Acquire(5)) acquire_sched = sched.filter(instruction_types=[AcquireInstruction])
பல வகையான கேட்களுக்கான கூடுதல் சிதைவு முறைகள். இந்த முறைகள் சி. என். ஓ. டி மற்றும் ஒற்றை குவிட் வாயில்களின் வரிசையாக ஒரு கேடை உடைக்க வெவ்வேறு சிதைவு நுட்பங்களைப் பயன்படுத்தும். பின்வரும் முறைகள் சேர்க்கப்பட்டுள்ளன:
முறை
விளக்கம்
QuantumCircuit.iso()ஒரு சுற்றுக்கு m முதல் n qubits வரை தன்னிச்சையான ஐசோமெட்ரியைச் சேர்க்கவும். இது n குவிட்களில் (m = n) தன்னிச்சையான யூனிடரிகளை இணைக்க அல்லது n குவிட்களின் எந்த நிலையையும் (m = 0) தயாரிக்க அனுமதிக்கிறது
QuantumCircuit.diag_gate()சுற்றுக்கு ஒரு மூலைவிட்ட வாயில் சேர்க்கவும்
QuantumCircuit.squ()ஒரு தன்னிச்சையான 2x2 ஒற்றையை மூன்று சுழற்சி வாயில்களாக சிதைத்து ஒரு சுற்றுக்குச் சேர்க்கவும்
QuantumCircuit.ucg()ஒரு சுற்றுக்கு ஒரே மாதிரியாக கட்டுப்படுத்தப்பட்ட வாயிலை (மல்டிபிளெக்ஸ் கேட் என்றும் அழைக்கப்படுகிறது) இணைக்கவும்
QuantumCircuit.ucx()ஒரே மாதிரியாக கட்டுப்படுத்தப்பட்ட (மல்டிபிளெக்ஸ் என்றும் அழைக்கப்படுகிறது) Rx சுழற்சி வாயிலை ஒரு சுற்றுடன் இணைக்கவும்
QuantumCircuit.ucy()ஒரே மாதிரியாக கட்டுப்படுத்தப்பட்ட (மல்டிபிளெக்ஸ் என்றும் அழைக்கப்படுகிறது) Ry சுழற்சி வாயிலை ஒரு சுற்றுக்கு இணைக்கவும்
QuantumCircuit.ucz()ஒரே மாதிரியாக கட்டுப்படுத்தப்பட்ட (மல்டிபிளெக்ஸ் என்றும் அழைக்கப்படுகிறது) Rz சுழற்சி வாயிலை ஒரு சுற்றுடன் இணைக்கவும்
சி. என். ஓ. டி-கட்டம் மற்றும் சி. என். ஓ. டி-மட்டும் நேரியல் சுற்றுகளின் தொகுப்புக்கான கிரே-சின்த் மற்றும் படேல்-மார்கோவ்-ஹேய்ஸ் வழிமுறைகளைச் சேர்த்தல். இந்த செயல்பாடுகள் ஒரு நேரியல் செயல்பாடு அல்லது சி. என். ஓ. டி மற்றும் மேட்ரிக்ஸ் விளக்கத்தைக் கொடுக்கும் கட்ட கேட்களை மட்டுமே கொண்ட ஒரு சுற்றுக்கு வழங்கப்பட்ட சி. என். ஓ. டி கேட்களை மட்டுமே கொண்ட சுற்றுகளின் தொகுப்பை அனுமதிக்கின்றன.
`` Qiskit.circuit.random`` தொகுதிக்கு ஒரு புதிய செயல்பாடு `` random_circuit`` சேர்க்கப்பட்டது. இந்த செயல்பாடு ஒரு குறிப்பிட்ட அளவின் சீரற்ற சுற்றுகளை தோராயமாக வெவ்வேறு வாயில்களைத் தேர்ந்தெடுத்து அவற்றை சுற்றுக்குச் சேர்ப்பதன் மூலம் உருவாக்கும். எடுத்துக்காட்டாக, இதைப் பயன்படுத்தி 10-ஆழத்துடன் 5-குவிட் சுற்று ஒன்றை உருவாக்க இதைப் பயன்படுத்தலாம்:
from qiskit.circuit.random import random_circuit circ = random_circuit(5, 10)
`` Qiskit.compiler.transpile () `` செயல்பாட்டில் ஒரு புதிய குவார்க் `` output_names`` சேர்க்கப்பட்டது. இந்த குவார்க் ஒரு சரம் அல்லது சரங்களின் பட்டியலை எடுத்து, `` transpile() `` அழைப்பால் திரும்பப் பெறும் வெளியீட்டு சுற்றுகளுக்கு சுற்று பெயரின் மதிப்பாக அவற்றைப் பயன்படுத்துகிறது. உதாரணத்திற்கு:
from qiskit.compiler import transpile my_circs = [circ_a, circ_b] tcirc_a, tcirc_b = transpile(my_circs, output_names=['Circuit A', 'Circuit B'])
tcirc_a மற்றும் tcirc_b இல் உள்ள `` name`` பண்பு முறையே
'Circuit A'மற்றும்'Circuit B'ஆக இருக்கும்.`` Qiskit.quantum_info.Operator`` மற்றும் `` qiskit.quantum_info.Statevector`` வகுப்புகளில்
equiv()ஒரு புதிய முறை சேர்க்கப்பட்டது. இரண்டாவதுOperatorபொருள் அல்லது `` Statevector`` என்பது உலகளாவிய கட்டத்திற்கு சமமானதா என்பதைச் சரிபார்க்க இந்த முறைகள் பயன்படுத்தப்படுகின்றன.பயனர் கட்டமைப்பு கோப்பில் பல புதிய விருப்பங்கள் உள்ளன:
circuit_drawerபுலம் இப்போது auto மதிப்பை ஏற்றுக்கொள்கிறது.circuit_drawerபுலத்திற்கான மதிப்பாக அமைக்கப்பட்டால், இயல்புநிலை டிராயர் பின்தளத்தில் அது கிடைத்தால் mpl ஆக இருக்கும், இல்லையெனில்`text` பின்தளத்தில் பயன்படுத்தப்படும்.மேட்லோட்லிப் சர்க்யூட் டிராயரால் பயன்படுத்தப்படும் இயல்புநிலை பாணியை அமைக்க ஒரு புதிய புலம்
circuit_mpl_styleபயன்படுத்தப்படலாம். இயல்புநிலையை முறையே கருப்பு மற்றும் வெள்ளை அல்லது இயல்புநிலை வண்ண பாணியாக அமைக்க இந்த புலத்திற்கான செல்லுபடியாகும் மதிப்புகள் `` bw`` மற்றும்default.`` Qiskit.compiler.transpile () `` க்கான அழைப்புகளுக்குப் பயன்படுத்த இயல்புநிலை டிரான்ஸ்பைலர் உகப்பாக்கம் அளவை அமைக்க ஒரு புதிய புலம் `` transpile_optimization_level`` பயன்படுத்தப்படலாம். மதிப்பை 0, 1, 2 அல்லது 3 என அமைக்கலாம்.
ஒரு புதிய துடிப்பு கட்டளையை அறிமுகப்படுத்தியது `` Delay`` இது ஒரு துடிப்பு `` Schedule`` இல் செருகப்படலாம். இந்த கட்டளை `` duration`` ஏற்றுக்கொள்கிறது, மேலும் இது எந்த `` Channel``லுக்கும் சேர்க்கப்படலாம். பிற கட்டளைகள் தாமதத்தின் போது சேனலில் திட்டமிடப்படாமல் போகலாம்.
மற்ற துடிப்பு கட்டளைகளைப் போலவே தாமதத்தையும் சேர்க்கலாம். உதாரணத்திற்கு:
from qiskit import pulse drive_channel = pulse.DriveChannel(0) delay = pulse.Delay(20) sched = pulse.Schedule() sched += delay(drive_channel)
குறிப்புகளை மேம்படுத்தவும் #: ../../release_notes .rs t :54 ../../release_not e s.r s t:240 #: ../../release_no t es. r st:480 ../../release_no tes . rst:710 #: ../../release_ n ot es .rst:879 ../../release _ no te s.rst:1491 #: ../../releas e _n ot es.rst:1915 ../../relea s e_ no tes.rst:2172 #: ../../rele a se _n otes.rst:2552 ../../rel e as e_ notes.rst:2694 #: ../../re l ea se _notes.rst:2767 ../../r e le as e_notes.rst:3507 #: ../../ r el ea se_notes.rst:4156 ../.. / re le ase_notes.rst:4273 #: ../. . /r el ease_notes.rst:4552 .. /. . /re lease_notes.rst:4634 #: ../ ../r elease_notes.rst:4706 .. /../ release_notes.rst:4755¶
முன்னர் நீக்கப்பட்ட
qiskit._utilதொகுதி நீக்கப்பட்டது. அதற்கு பதிலாகqiskit.utilபயன்படுத்தப்பட வேண்டும்.`` QuantumCircuit.count_ops () `` முறை இப்போது `` dict`` க்கு பதிலாக `` OrderedDict`` பொருளை வழங்குகிறது. `` OrderedDict`` என்பது `` dict`` துணைப்பிரிவு என்பதால் பெரும்பாலான பயன்பாட்டு நிகழ்வுகளுக்கு இது இணக்கமாக இருக்க வேண்டும். இருப்பினும் வகை காசோலைகள் மற்றும் பிற வகுப்பு காசோலைகள் புதுப்பிக்கப்பட வேண்டியிருக்கும்.
`` DAGCircuit.width () `` முறை இப்போது மொத்த எண் குவாண்டம் பிட்கள் மற்றும் கிளாசிக்கல் பிட்களை வழங்குகிறது. இது குவாண்டம் பிட்களின் எண்ணிக்கையை மட்டுமே தரும் முன். உங்களுக்கு குவாண்டம் பிட்களின் எண்ணிக்கை தேவைப்பட்டால், அதற்கு பதிலாக `` DAGCircuit.num_qubits () `` ஐப் பயன்படுத்தலாம்.
`` DAGCircuit.num_cbits () `` செயல்பாடு நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` DAGCircuit.num_clbits () `` ஐப் பயன்படுத்தலாம்.
தனிப்பட்ட குவாண்டம் பிட்கள் மற்றும் கிளாசிக்கல் பிட்கள் இனி
(register, index)டுபில்கள் என குறிப்பிடப்படுவதில்லை. அவை இப்போது குபிட் மற்றும்` கிளிபிட்` வகுப்புகளின் நிகழ்வுகளாகும். நீங்கள் தனிப்பட்ட பிட்களைக் கையாளுகிறீர்களானால், எந்தவொரு பயன்பாட்டையும் புதுப்பிக்கிறீர்கள் என்பதை உறுதிப்படுத்திக் கொள்ளுங்கள் அல்லது இந்த புதிய வகுப்புகளைத் தேடுவதற்கு காசோலைகளைத் தட்டச்சு செய்க.முன்னமைக்கப்பட்ட பாஸ்மேனேஜர் வகுப்புகள் `` qiskit.transpiler.preset_passmanagers.default_pass_manager`` மற்றும் `` qiskit.transpiler.preset_passmanagers.default_pass_manager_simulator`` (''qiskit.compiler.transpile() க்கான முந்தைய இயல்புநிலை பாஸ் மேலாளர்கள்) அகற்றப்பட்டது. இந்த பாஸ் மேலாளர்கள் நீங்கள் கைமுறையாகப் பயன்படுத்தினால், புதிய இயல்புநிலைக்கு மாறவும், ` qiskit.transpile.preset_passmanagers.level1_pass_manager``.
`` LegacySwap`` பாஸ் அகற்றப்பட்டது. தனிப்பயன் பாஸ் நிர்வாகியில் நீங்கள் இதைப் பயன்படுத்தினால், அதன் பயன்பாட்டை `` StochasticSwap`` பாஸால் மாற்றலாம், இது வேகமான நிலையான பதிப்பாகும். முன்னமைக்கப்பட்ட அனைத்து பாஸ்மேனேஜர்களும் `` LegacySwap`` க்கு பதிலாக `` StochasticSwap`` பாஸைப் பயன்படுத்த புதுப்பிக்கப்பட்டுள்ளனர்.
பின்வரும் நீக்கப்பட்ட `` qiskit.dagcircuit.DAGCircuit`` முறைகள் நீக்கப்பட்டன:
`` DAGCircuit.get_qubits () `` - அதற்கு பதிலாக `` DAGCircuit.qubits () `` ஐப் பயன்படுத்தவும்
`` DAGCircuit.get_bits () `` - அதற்கு பதிலாக `` DAGCircuit.clbits () `` ஐப் பயன்படுத்தவும்
`` DAGCircuit.qasm () `` - `` qiskit.converters.dag_to_circuit () `` மற்றும் `` QuantumCircuit.qasm () `` ஆகியவற்றின் கலவையைப் பயன்படுத்தவும். உதாரணத்திற்கு:
from qiskit.dagcircuit import DAGCircuit from qiskit.converters import dag_to_circuit my_dag = DAGCircuit() qasm = dag_to_circuit(my_dag).qasm()
`` DAGCircuit.get_op_nodes () `` - அதற்கு பதிலாக `` DAGCircuit.op_nodes () `` ஐப் பயன்படுத்தவும். திரும்பும் வகை என்பது `` get_op_nodes () `` ஆல் முன்னர் வழங்கப்பட்ட டுபில்களின் பட்டியலுக்குப் பதிலாக `` op_nodes () `` க்கான `` DAGNode`` பொருட்களின் பட்டியல் என்பதை நினைவில் கொள்க.
`` DAGCircuit.get_op_nodes () `` - அதற்கு பதிலாக `` DAGCircuit.op_nodes () `` ஐப் பயன்படுத்தவும். திரும்பும் வகை என்பது `` get_op_nodes () `` ஆல் முன்னர் வழங்கப்பட்ட டுபில்களின் பட்டியலுக்குப் பதிலாக `` op_nodes () `` க்கான `` DAGNode`` பொருட்களின் பட்டியல் என்பதை நினைவில் கொள்க.
`` DAGCircuit.get_op_nodes () `` - அதற்கு பதிலாக `` DAGCircuit.op_nodes () `` ஐப் பயன்படுத்தவும். திரும்பும் வகை என்பது `` get_op_nodes () `` ஆல் முன்னர் வழங்கப்பட்ட டுபில்களின் பட்டியலுக்குப் பதிலாக `` op_nodes () `` க்கான `` DAGNode`` பொருட்களின் பட்டியல் என்பதை நினைவில் கொள்க.
`` DAGCircuit.get_op_nodes () `` - அதற்கு பதிலாக `` DAGCircuit.op_nodes () `` ஐப் பயன்படுத்தவும். திரும்பும் வகை என்பது `` get_op_nodes () `` ஆல் முன்னர் வழங்கப்பட்ட டுபில்களின் பட்டியலுக்குப் பதிலாக `` op_nodes () `` க்கான `` DAGNode`` பொருட்களின் பட்டியல் என்பதை நினைவில் கொள்க.
`` DAGCircuit.get_op_nodes () `` - அதற்கு பதிலாக `` DAGCircuit.op_nodes () `` ஐப் பயன்படுத்தவும். திரும்பும் வகை என்பது `` get_op_nodes () `` ஆல் முன்னர் வழங்கப்பட்ட டுபில்களின் பட்டியலுக்குப் பதிலாக `` op_nodes () `` க்கான `` DAGNode`` பொருட்களின் பட்டியல் என்பதை நினைவில் கொள்க.
பின்வரும் `` qiskit.dagcircuit.DAGCircuit`` முறைகள் ஒரு `` node_id`` ஐ ஒரு அளவுருவாக ஏற்றுக்கொள்வதற்கான ஆதரவைக் குறைத்துவிட்டன. இது அகற்றப்பட்டது, இப்போது `` DAGNode`` பொருள்கள் மட்டுமே உள்ளீடாக ஏற்றுக்கொள்ளப்படுகின்றன:
successors()predecessors()ancestors()descendants()bfs_successors()quantum_successors()remove_op_node()remove_ancestors_of()remove_descendants_of()remove_nonancestors_of()remove_nondescendants_of()substitute_node_with_dag()
`` Qiskit.dagcircuit.DAGCircuit`` முறை `` rename_register() `` அகற்றப்பட்டது. இது அனைத்து கிஸ்கிட் குறியீடும் பயன்படுத்தப்படவில்லை. நீங்கள் அதை வெளிப்புறமாக நம்பியிருந்தால், நீங்கள் மீண்டும் செயல்படுத்த வேண்டியது வெளிப்புற செயல்பாடு.
` ` qiskit.dagcircuit.DAGCircuit ` ` பண்பாடு ` ` multi_graph ` ` நீக்கப்பட்டது. நேரடியான ` 'networkx ` ` ` multi_graph ` ` பொருள் இனி ஆதரிக்கப்படவில்லை. ` ` DAGCircuit ` ` வகுப்பால் வழங்கப்படும் API, அதற்கு பதிலாக பயன்படும்.
நீக்கப்பட்ட விதிவிலக்கு வகுப்பு `` qiskit.qiskiterror.QiskitError`` அகற்றப்பட்டது. அதற்கு பதிலாக நீங்கள் `` qiskit.exceptions.QiskitError`` ஐப் பயன்படுத்த வேண்டும்.
`` Qiskit.transpiler.PassManager` இன் கட்டமைப்பாளரிடமிருந்து பூலியன் குவார்க்ஸ், `` ignore_requires`` மற்றும்
ignore_preseversஆகியவை நீக்கப்பட்டன. இவை இனி சரியான விருப்பங்கள் அல்ல.`` Qiskit.tools.logging`` தொகுதி நீக்கப்பட்டது. இந்த தொகுதி எதையும் பயன்படுத்தவில்லை மற்றும் பைத்தானின் நிலையான நூலகம்
loggingதொகுதி வழங்கும் இடைமுகங்களில் எதையும் சேர்க்கவில்லை. உள்நுழைவதற்கு தனிப்பயன் வடிவமைப்பை அமைக்க விரும்பினால், அதற்கு பதிலாக நிலையான நூலகம் ``logging'` தொகுதியைப் பயன்படுத்தவும்.`` CompositeGate`` வகுப்பு அகற்றப்பட்டது. அதற்கு பதிலாக நீங்கள் ஒரு சுற்றிலிருந்து ஒரு அறிவுறுத்தல் பொருளை நேரடியாக உருவாக்கி அதை உங்கள் சுற்றுடன் சேர்க்க வேண்டும். எடுத்துக்காட்டாக, நீங்கள்:
custom_gate_circ = qiskit.QuantumCircuit(2) custom_gate_circ.x(1) custom_gate_circ.h(0) custom_gate_circ.cx(0, 1) custom_gate = custom_gate_circ.to_instruction()
முன்பு நீக்கப்பட்ட குவார்க்குகள்,
seedமற்றும் `` qiskit.compiler.assemble () `` க்கானconfigஆகியவை நீக்கப்பட்டன, அதற்கு பதிலாக முறையே `` seed_simulator`` மற்றும் `` run_config`` ஆகியவற்றைப் பயன்படுத்தவும்.முன்னர் நீக்கப்பட்ட மாற்றிகள் `` qiskit.converters.qobj_to_circuits () `` மற்றும் `` qiskit.converters.circuits_to_qobj () `` நீக்கப்பட்டன. அதற்கு பதிலாக முறையே `` qiskit.assembler.disassemble () `` மற்றும் `` qiskit.compiler.assemble () `` ஐப் பயன்படுத்தவும்.
`` Qiskit.compiler.transpile () `` க்காக முன்னர் நீக்கப்பட்ட குவார்க் `` seed_mapper`` அகற்றப்பட்டது. அதற்கு பதிலாக நீங்கள் `` seed_transpiler`` ஐப் பயன்படுத்த வேண்டும்
`` Qiskit.execute () `` செயல்பாட்டிற்காக முன்னர் நீக்கப்பட்ட குவார்க்ஸ்
seed,seed_mapper,configமற்றும்circuits``ஆகியவை நீக்கப்பட்டன. அதற்கு பதிலாக முறையே `` seed_simulator,seed_transpiler,run_config, மற்றும்experimentsவாதங்களைப் பயன்படுத்தவும்.முன்னர் நீக்கப்பட்ட `` qiskit.tools.qcvv`` தொகுதி அகற்றப்பட்டது, அதற்கு பதிலாக qiskit-ignis ஐப் பயன்படுத்தவும்.
முன்னர் நீக்கப்பட்ட செயல்பாடுகள் `` qiskit.transpiler.transpile () `` மற்றும் `` qiskit.transpiler.transpile_dag () `` நீக்கப்பட்டன. அதற்கு பதிலாக நீங்கள் `` qiskit.compiler.transpile`` ஐப் பயன்படுத்த வேண்டும். நீங்கள் `` transpile_dag()`` ஐப் பயன்படுத்தினால், இதை இயக்குவதன் மூலம் மாற்றலாம்:
circ = qiskit.converters.dag_to_circuit(dag) out_circ = qiskit.compiler.transpile(circ) qiskit.converters.circuit_to_dag(out_circ)
முன்னர் நீக்கப்பட்ட செயல்பாடு `` qiskit.compile () `` அகற்றப்பட்டது, அதற்கு பதிலாக நீங்கள் `` qiskit.compiler.transpile () `` மற்றும் `` qiskit.compiler.assemble () `` ஐப் பயன்படுத்த வேண்டும்.
`` Qiskit.tools.jupyter`` இலிருந்து `` %%qiskit_progress_bar`` என்ற ஜூபிட்டர் செல் மேஜிக் ஒரு வரி மந்திரமாக மாற்றப்பட்டுள்ளது. மந்திரம் எவ்வாறு பயன்படுத்தப்படுகிறது, அது எவ்வாறு இயங்குகிறது என்பதை சிறப்பாக பிரதிபலிக்க இது செய்யப்பட்டது. நீங்கள் ஏற்கனவே இருக்கும் நோட்புக்கில் `` %%qiskit_progress_bar`` செல் மந்திரத்தைப் பயன்படுத்தினால், அதற்கு பதிலாக
%qiskit_progress_barஎன மாற்றுவதன் மூலம் இதை ஒரு வரி மந்திரமாக புதுப்பிக்க வேண்டும். மற்ற அனைத்தும் ஒரே மாதிரியாக நடந்து கொள்ள வேண்டும்.நீக்கப்பட்ட செயல்பாடு `` qiskit.tools.qi.qi.random_unitary_matrix () `` நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` qiskit.quantum_info.random.random_unitary () `` செயல்பாட்டைப் பயன்படுத்த வேண்டும்.
நீக்கப்பட்ட செயல்பாடு `` qiskit.tools.qi.qi.random_decity_matrix () `` நீக்கப்பட்டது. அதற்கு பதிலாக `` qiskit.quantum_info.random.random_decity_matrix () `` செயல்பாட்டைப் பயன்படுத்த வேண்டும்.
நீக்கப்பட்ட செயல்பாடு `` qiskit.tools.qi.qi.purity () `` நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` qiskit.quantum_info.purity () `` செயல்பட வேண்டும்.
நீக்கப்பட்ட `` QuantumCircuit._attach () `` முறை நீக்கப்பட்டது. அதற்கு பதிலாக `` QuantumCircuit.append () `` ஐப் பயன்படுத்த வேண்டும்.
`` Qiskit.qasm.Qasm`` முறை `` get_filename () `` அகற்றப்பட்டது. அதற்கு பதிலாக `` return_filename () `` முறையைப் பயன்படுத்தலாம்.
நீக்கப்பட்ட `` qiskit.mapper`` தொகுதி நீக்கப்பட்டது. அவற்றின் மாற்றுகளுடன் செயல்பாடுகள் மற்றும் வகுப்புகளின் பட்டியல்:
`` qiskit.mapper.CouplingMap``: `` qiskit.transpiler.CouplingMap`` அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
`` qiskit.mapper.Layout``: `` qiskit.transpiler.Layout`` அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்
`` qiskit.mapper.compiling.euler_angles_1q () ``: `` qiskit.quantum_info.synthesis.euler_angles_1q () `` அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்
`` qiskit.mapper.compiling.two_qubit_kak () ``: `` qiskit.quantum_info.synthesis.two_qubit_cnot_decompose () `` அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
நீக்கப்பட்ட விதிவிலக்கு வகுப்புகள் `` qiskit.mapper.exceptions.CouplingError`` மற்றும் `` qiskit.mapper.exceptions.LayoutError`` க்கு ஒரு மாற்று இல்லை, ஏனெனில் அவை `` qiskit.mapper`` தொகுதி இல்லாமல் எந்த நோக்கமும் செய்யாது.
`` Qiskit.pulse.samplers`` தொகுதி `` qiskit.pulse.pulse_lib.samplers`` க்கு நகர்த்தப்பட்டது. `` Qiskit.pulse.samplers`` இன் இறக்குமதியை `` qiskit.pulse.pulse_lib.samplers`` க்கு புதுப்பிக்க வேண்டும்.
seaborn இப்போது` qiskit.visualization.plot_state_qsphere () செயல்பாட்டிற்கான சார்புநிலையாகும். காட்சிப்படுத்தலுக்கு சரியான கோண வண்ண வரைபடங்களை உருவாக்க இது தேவைப்படுகிறது. ``qiskit-terra [visualization] ` கூடுதல் நிறுவல் இலக்கு
seaborn> = 0.9.0ஐ நிறுவ புதுப்பிக்கப்பட்டுள்ளது. நீங்கள் காட்சிப்படுத்தல் மற்றும் குறிப்பாக `` plot_state_qsphere () `` செயல்பாட்டைப் பயன்படுத்துகிறீர்கள் என்றால்,seabornஐ நிறுவ அல்லது கைமுறையாகpip install seaborn> = 0.9.0ஐ இயக்கலாம்முன்னர் நீக்கப்பட்ட செயல்பாடுகள் `` qiksit.visualization.plot_state`` மற்றும் `` qiskit.visualization.iplot_state`` ஆகியவை நீக்கப்பட்டன. அதற்கு பதிலாக ஒவ்வொரு சதி வகைக்கும் குறிப்பிட்ட செயல்பாட்டை நீங்கள் பயன்படுத்த வேண்டும். நீக்கப்பட்ட செயல்பாடுகளை அவற்றின் சமமான புதியவற்றுடன் வரைபட பின்வரும் அட்டவணையைப் பார்க்கலாம்:
Qiskit Terra 0.6
Qiskit Terra 0.7+
plot_state(rho)
plot_state_city(rho)
plot_state(rho, method='city')
plot_state_city(rho)
plot_state(rho, method='city')
plot_state_ paulivec (rho)
plot_ state (rho, method = 'qsphere')
plot_state_qsphere (rho)
plot_ state (rho, method = 'bloch')
plot_ bloch_multivector (rho)
plot_ state (rho, method = 'hinton')
plot_state_hinton (rho)
`` latex`` மற்றும்
latex_sourceசர்க்யூட் டிராயர் பின்தளத்தில் உள்ளpylatexencமற்றும் ``pillow'` சார்புகள் இனி தேவைகளாக பட்டியலிடப்படவில்லை. நீங்கள் லேடெக்ஸ் சர்க்யூட் டிராயர்களைப் பயன்படுத்தப் போகிறீர்கள் என்றால், நீங்கள் இரண்டு தொகுப்புகளையும் நிறுவியிருப்பதை உறுதிசெய்கிறீர்களா அல்லது கிஸ்கிட்-டெர்ராவுடன் சேர்ந்து அதை நிறுவ செட்டப்டூல்ஸ் கூடுதல் பயன்படுத்தவும்:pip install qiskit-terra[visualization]
`` qiskit.IBMQ'` அல்லது
qiskit.Aerஆகியவற்றை அமைக்க முடியாவிட்டால், `` qiskit`` பெயர்வெளியின் வேர் இப்போது இறக்குமதி குறித்த எச்சரிக்கையை வெளியிடும்.qiskitபெயர்வெளியில் எதையும் இறக்குமதி செய்யும்போதெல்லாம் இது நிகழும். பயனர்கள் qiskitஐ இயக்குகிறார்களா என்பதை தெளிவுபடுத்துவதற்காக இந்த எச்சரிக்கைகள் சேர்க்கப்பட்டன, மேலும் qiskit-aer மற்றும் qiskit-ibmq-வழங்குநர் தொகுப்புகளைக் கண்டுபிடிக்க முடியவில்லை. தொகுப்புகள் காணவில்லை அல்லது பைதான் பேக்கேஜிங் / பிப் ஒரு உறுப்பை தவறாக நிறுவியிருக்கிறதா என்பது தெளிவாகத் தெரியவில்லை, அவற்றைப் பயன்படுத்த நீங்கள் சென்று வெற்றுImportErrorகிடைக்கும். பொதுவாக பயன்படுத்தப்படும் இந்த மாற்றுப்பெயர்கள் காணவில்லை எனில் இந்த எச்சரிக்கைகள் முன் தெளிவுபடுத்த வேண்டும்.எனினும், பயனர்களுக்காக, qiskit-aer அல்லது qiskit-ibmq-வழங்குநர் பயன்படுத்துவதற்கு இல்லையென்றால் இது கூடுதல் ஒலியை ஏற்படுத்தலாம். இந்த பயனர்களுக்கு இந்த எச்சரிப்புகள் எளிதாக, பைதான் (Python) நிலையான நூலகம் ` ` warnings ` `. பயனர்கள் இந்த இரண்டு வரிகளை qiskit லிருந்து எந்த இறக்குமதியின் முன் இந்த இரண்டு வரிகளை தடுக்க முடியும்:
import warnings warnings.filterwarnings('ignore', category=RuntimeWarning, module='qiskit')
இது qiskit-aer அல்லது qiskit-ibmq-வழங்குபவர் நிறுவப்பட்டிருப்பது இல்லையென்றால், இன்னும் இன்னும் பிற எச்சரிகளை பாதுகாக்கிறது.
தேய்மான குறிப்புகள்¶
`` U`` மற்றும் `` CX`` கேட்கள் நீக்கப்பட்டன. உங்கள் குறியீட்டில் இந்த கேட்களைப் பயன்படுத்துகிறீர்கள் என்றால், அதற்கு பதிலாக `` u3`` மற்றும் `` cx`` ஐப் பயன்படுத்த அவற்றை புதுப்பிக்க வேண்டும். எடுத்துக்காட்டாக, நீங்கள் சர்க்யூட் கேட் செயல்பாடுகளைப் பயன்படுத்துகிறீர்கள் என்றால் ``circuit.u.base () `` மற்றும் ``circuit.cx.base() `` இவை ``circuit.u3() `` மற்றும் ``circuit.cx()" என புதுப்பிக்க வேண்டும் முறையே.
`` U0`` கேட் பல
Idenகேட்களைப் பயன்படுத்துவதற்கு ஆதரவாக நீக்கப்பட்டது, அது எதிர்காலத்தில் அகற்றப்படும். உங்கள் சுற்று வட்டாரத்தில் `` u0`` கேட்-ஐப் பயன்படுத்துகிறீர்கள் என்றால், `` Iden`` ஐப் பயன்படுத்த உங்கள் அழைப்புகளைப் புதுப்பிக்க வேண்டும். எடுத்துக்காட்டாக, உங்கள் சர்க்யூட்டில் ``circuit.u0(2) `` ஐப் பயன்படுத்துகிறீர்கள்:circuit.iden() circuit.iden()
பதிலாக.
Qiskit.pulse.DeviceSpecificationவகுப்பு இப்போது நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள்qiskit.pulse.PulseChannelSpecஐப் பயன்படுத்த வேண்டும்.`` Qiskit.circuit.Qubit``, `` qiskit.circuit.Clbit``, அல்லது `` qiskit.circuit.Bit`` வகுப்பை குறியீட்டால் அணுகுவது நீக்கப்பட்டது (`` (register, index) உடன் பொருந்தக்கூடியது ` இந்த வகுப்புகள் மாற்றப்பட்ட டூப்பிள்ஸ்). அதற்கு பதிலாக நீங்கள் ` register`` மற்றும்
indexபண்புகளைப் பயன்படுத்த வேண்டும்.`` Qiskit.QuantumCircuit`` முறைக்கு
appendஒரு டூப்பிள் `` (register, index) `` க்குச் செல்லுதல் நீக்கப்பட்டது. அதற்கு பதிலாக பிட் பொருள்களை நேரடியாக பயன்படுத்த வேண்டும்.`` Qiskit.transpiler.Layout`` பொருளின் கூறுகளை ஒரு டூப்பிள்
(register, index)உடன் அணுகுவது நீக்கப்பட்டது. அதற்கு பதிலாக ஒரு பிட் பொருள் நேரடியாக பயன்படுத்தப்பட வேண்டும்.`` Qiskit.transpiler.Layout`` கட்டமைப்பாளர் முறை `` qiskit.transpiler.Layout.from_tuplelist () `` நீக்கப்பட்டது. அதற்கு பதிலாக கட்டமைப்பாளர் `` qiskit.transpiler.Layout.from_qubit_list () `` ஐப் பயன்படுத்த வேண்டும்.
`` Qiskit.pulse.ops`` தொகுதி நீக்கப்பட்டது. இது வழங்கிய அனைத்து செயல்பாடுகளும்:
unionflattenshiftinsertappend
qiskit.pulse.Scheduleமற்றும்qiskit.pulse.Instructionவகுப்புகளில் நேரடியாக சமமான முறைகள் உள்ளன. அதற்கு பதிலாக அந்த முறைகள் பயன்படுத்தப்பட வேண்டும்.Qiskit.qasm.Qasmமுறைget_tokens ()நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள்generate_tokens ()முறையைப் பயன்படுத்த வேண்டும்.Qiskit.qasm.qasmparser.QasmParserமுறைget_tokens ()நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள்read_tokens()முறையைப் பயன்படுத்த வேண்டும்.Qobj வகுப்பிற்கான
as_dict ()முறை நீக்கப்பட்டது மற்றும் எதிர்காலத்தில் அகற்றப்படும். அதற்கான அழைப்புகளை அதற்கு பதிலாகto_dict()உடன் மாற்ற வேண்டும்.
பிழை திருத்தங்கள்¶
`` CU3Gate`` இன் வரையறை கட்டுப்படுத்தப்பட்ட `` U3Gate`` இன் நியமன வரையறைக்கு சமமாக மாற்றப்பட்டுள்ளது.
பாஸ் மேலாளரில் தளவமைப்பைக் கையாளுதல் தரப்படுத்தப்பட்டுள்ளது. தளவமைப்பைக் கையாள்வதில் பல புகாரளிக்கப்பட்ட சிக்கல்களை இது சரிசெய்கிறது. `` Qiskit.compiler.transpile () `` மற்றும் `` qiskit.execute () `` இல் உள்ள `` initial_layout`` குவார்க் அளவுரு இப்போது சுற்றுகளை கடத்தும் போது சாதனத்தில் விரும்பிய குவிட்களில் சுற்றிலிருந்து உங்கள் குவிட்களை வெளியேற்றும்.
N-qubit அலகுகளுக்கான ஆதரவு BasicAer சிமுலேட்டரில் சேர்க்கப்பட்டது மற்றும் சிமுலேட்டர்களுக்கான அடிப்படை வாயில்களின் தொகுப்பில் `` unitary`` (தன்னிச்சையான ஒற்றையாட்சி வாயில்கள்) சேர்க்கப்பட்டன
`` Qiskit.visualization.plost_state_qsphere () `` இதில் பல சிக்கல்களை சரிசெய்ய புதுப்பிக்கப்பட்டுள்ளது. இப்போது வெளியீடு Q கோள காட்சிப்படுத்தல் சரியாக உருவாக்கப்பட்டு பின்வரும் அம்சங்கள் புதுப்பிக்கப்பட்டுள்ளன:
அனைத்து நிரப்பு அடிப்படை நிலைகளும் ஆண்டிபோடல் ஆகும்
கட்டம் கோளத்தின் மேற்பரப்பில் கோடு மற்றும் மார்க்கரின் நிறத்தால் குறிக்கப்படுகிறது
- கோட்டின் ஒளிஊடுருவல் மற்றும் மார்க்கரின் அளவின் மூலம் நிகழ்தகவு குறிக்கப்படுகிறது
கோளத்தின் மேற்பரப்பு
பிற குறிப்புகள்¶
`` Qiskit.compiler.transpile () `` மற்றும் `` qiskit.execute () `` க்கான இயல்புநிலை PassManager `` qiskit.transpile.preset_passmanagers.level1_pass_manager`` இல் வரையறுக்கப்பட்ட தேர்வுமுறை நிலை 1 பாஸ் மேலாளராக மாற்றப்பட்டுள்ளது.
அனைத்து சர்க்யூட் டிராயர் பின்தளத்தில் இப்போது வெளியீட்டு காட்சிப்படுத்தலில் pi இன் பொதுவான பின்னங்களாக ஒரு சுற்றில் கேட் அளவுருக்களை வெளிப்படுத்தும். ஒரு அளவுருவின் மதிப்பை pi இன் ஒரு பகுதியாக வெளிப்படுத்த முடியுமானால் அது எண் சமத்திற்கு பதிலாக பயன்படுத்தப்படும்.
`` Qiskit.assembler.assemble_schedules () `` ஐப் பயன்படுத்தும் போது, எண்ணைப் பயன்படுத்த நினைவக_ இடங்களின் எண்ணிக்கையை நீங்கள் வழங்காவிட்டால், உள்ளீட்டு அட்டவணைகளில் கையகப்படுத்துதல்களின் எண்ணிக்கையின் அடிப்படையில் ஊகிக்கப்படும்.
`` Qiskit.dagcircuit.DAGCircuit`` சொத்து `` node_counter`` இல் உள்ள நீக்குதல் எச்சரிக்கை நீக்கப்பட்டது. எச்சரிக்கை சேர்க்கப்பட்டபோது எச்சரிக்கப்பட்ட நடத்தை மாற்றம் நடைமுறைக்கு வந்தது, எனவே அது மாறிவிட்டது என்ற எச்சரிக்கை எந்த நோக்கமும் செய்யவில்லை.
`` PassManager.run () `` க்கான அழைப்புகள் இப்போது ஒவ்வொரு பாஸ் செயலாக்கத்திற்கும் INFO மட்டத்தில் பைதான் பதிவு செய்திகளை வெளியிடும். இந்த செய்திகளில் பாஸ் பெயர் மற்றும் பாஸின் மொத்த செயல்பாட்டு நேரம் ஆகியவை அடங்கும். பைத்தானின் நிலையான பதிவு பயன்படுத்தப்பட்டது, ஏனெனில் இது Qiskit-Terra வின் பதிவு மற்ற பயன்பாடுகள் மற்றும் நூலகங்களுடன் நிலையான வழியில் ஒருங்கிணைக்க அனுமதிக்கிறது. டிரான்ஸ்பைலருக்கான அனைத்து பதிவுகளும் `` qiskit.transpiler`` பெயர்வெளியின் கீழ் நிகழ்கின்றன,
logging.getLogger ('qiskit.transpiler) பயன்படுத்துகிறது. எடுத்துக்காட்டாக, நீங்கள் இயக்கக்கூடிய டிரான்ஸ்பைலருக்கான DEBUG நிலை பதிவை இயக்க:import logging logging.basicConfig() logging.getLogger('qiskit.transpiler').setLevel(logging.DEBUG)
இது டிரான்ஸ்பைலருக்கான பதிவு அளவை DEBUG க்கு அமைக்கும் மற்றும் அந்த செய்திகளை stderr இல் அச்சிட கட்டமைக்கும்.
ஏர் 0.3¶
நிஜ உலக காட்சிகளை சிறப்பாக உருவகப்படுத்த, எங்கள் இரைச்சல் மாதிரிகளுடன் இணைந்து பயன்படுத்தக்கூடிய புதிய உயர் செயல்திறன் Density Matrix சிமுலேட்டர் உள்ளது.
மேட்ரிக்ஸ் தயாரிப்பு நிலை (MPS) சிமுலேட்டரைச் சேர்த்துள்ளோம். பலவிதமான குவாண்டம் சுற்றுகளை திறம்பட உருவகப்படுத்துவதற்கு MPS அனுமதிக்கிறது, வலுவான தொடர்புகள் மற்றும் மிகவும் சிக்கலான மாநிலங்களின் முன்னிலையில் கூட. MPS-க்கு ஏற்ற நிகழ்வுகளுக்கு, பல நூறு குவிட்கள் மற்றும் பலவற்றைக் கொண்ட சுற்றுகள் சரியாக உருவகப்படுத்தப்படலாம், எ.கா., கவனிக்கத்தக்கவற்றின் எதிர்பார்ப்பு மதிப்புகளைப் பெறுவதற்கான நோக்கத்திற்காக.
எங்கள் எல்லா சிமுலேட்டர்களிலும் ஸ்னாப்ஷாட்களைச் செய்யலாம்.
இப்போது நாம் மாதிரி சுற்றுகளை படிக்கக்கூடிய பிழைகள் மூலம் அளவிட முடியும், சிறந்த சுற்றுகள் மட்டுமல்ல.
இரைச்சல் இருப்புடன் சில சுற்று மேம்படுத்தல்களை அதிகரித்துள்ளோம்.
சிறந்த 2-குவிட் பிழை தோராயங்கள் சேர்க்கப்பட்டுள்ளன.
சில சத்தமில்லாத உருவகப்படுத்துதல்களை எளிதில் உருவாக்குவதற்கும், உருவகப்படுத்துவதற்கும் சில கருவிகள் உள்ளன.
குறைந்த மிதக்கும் புள்ளி எண் துல்லியம் தேவைப்படும் உருவகப்படுத்துதல்களுடன் அதிகரித்த செயல்திறன்.
பற்றவைப்பு 0.2¶
புதிய அம்சங்கள்¶
Seed values இப்போது தன்னிச்சையாக RB இல் சேர்க்கப்படலாம் (வரிசையில் மட்டுமல்ல)
அளவீட்டுத் தணிப்புக்கு பல முடிவுகளைச் சேர்ப்பதற்கான ஆதரவு
RB ஃபிட்டர்ஸ் இப்போது யூக மதிப்புகளை வழங்குவதை ஆதரிக்கிறது
பிழை திருத்தங்கள்¶
RB பொருத்தம் பிழையில் பிழை சரி செய்யப்பட்டது
பொருத்தமாக ஒரு குவிட் குறியீட்டைத் தேர்ந்தெடுக்கும்போது, பண்புக்கூறு ஃபிட்டரில் ஒரு பிழை சரி செய்யப்பட்டது
பிற குறிப்புகள்¶
பல முடிவுகளுக்குப் பயன்படுத்தப்படும் போது அளவீட்டுத் தணிப்பு இப்போது இணையாக இயங்குகிறது
RB பொருத்துதல்களுக்கான யூக மதிப்புகள் மேம்படுத்தப்பட்டுள்ளன
அக்வா 0.6¶
சேர்க்கப்பட்டது¶
Relative-Phase Toffoli gates `` rccx`` (2 கட்டுப்பாடுகளுடன்) மற்றும் `` rcccx`` (3 கட்டுப்பாடுகளுடன்).
மாறுபட்ட வடிவம் `` RYCRX``
Mctக்கு புதிய'basic-no-ancilla'பயன்முறை.பல கட்டுப்பாட்டு சுழற்சி வாயில்கள்
mcrx,mcry, மற்றும்mcrzஆகியவை பொதுவானu3வாயிலாக கிரேக்கோடு செயல்படுத்தப்படுவதை ஆதரிக்கவில்லைவேதியியல்: ROHF திறந்த-ஷெல் ஆதரவு
அனைத்து இயக்கிகளுக்கும் துணைபுரிகிறது: Gaussian16, PyQuante, PySCF மற்றும் PSI4
ஹார்ட்ரீஃபாக் ஆரம்ப நிலை, UCCSD மாறுபட்ட வடிவம் மற்றும் பரிதி மேப்பிங்கிற்கான இரண்டு குவிட் குறைப்பு இப்போது திறந்த ஷெல் ஆதரவுக்காக வெவ்வேறு ஆல்பா மற்றும் பீட்டா துகள் எண்களை ஆதரிக்கிறது
வேதியியல்: UHF திறந்த-ஷெல் ஆதரவு
அனைத்து இயக்கிகளுக்கும் துணைபுரிகிறது: Gaussian16, PyQuante, PySCF மற்றும் PSI4
தனி பீட்டாவிற்கான ஒருங்கிணைப்புகள், குணகங்கள் போன்றவற்றைச் சேர்க்க QMolecule நீட்டிக்கப்பட்டுள்ளது
வேதியியல்: சோதனைக்கு இவற்றிற்கான பொதுவான அணுகலை எளிதாக்க அணு சுற்றுப்பாதை அடிப்படையில் ஒருங்கிணைப்புகளுடன் QMolecule நீட்டிக்கப்பட்டுள்ளது
அனைத்து இயக்கிகளுக்கும் துணைபுரிகிறது: Gaussian16, PyQuante, PySCF மற்றும் PSI4
வேதியியல்: கூடுதலான PyQuante மற்றும் PySCF இயக்கி வடிவமைப்பு
குவிப்பு சகிப்புத்தன்மை மற்றும் அதிகபட்ச குவிப்பு மறு செய்கை கட்டுப்பாடுகள்.
PySCF ஆரம்ப யூக தேர்வுக்கு
வேதியியல்: PyQuante மற்றும் PySCF கணக்கீடுகளிலிருந்து பிழைத்திருத்த பதிவில் செயலாக்க வெளியீடு சேர்க்கப்பட்டது (Gaussian16 மற்றும் PSI4 வெளியீடுகள் ஏற்கனவே பிழைத்திருத்த பதிவில் சேர்க்கப்பட்டன)
வேதியியல்: ஒன்றுசேர்ந்த qiskit-chemistry qiskit-aqua
`` MatrixOperator``, `` WeightedPauliOperator`` மற்றும் `` TPBGroupedPauliOperator`` வகுப்பைச் சேர்க்கவும்.
நேர பரிணாமத்தின் பதிவு இல்லாத வழிமுறைகளைப் பெற `` evolution_instruction`` செயல்பாட்டைச் சேர்க்கவும்.
` ` op_converter ` ` கூடுதலாக பல்வேறு வகையான இயக்குநர்களை மாற்றுவதற்கு இடத்தை ஒழுங்குபடுத்துவதற்கு கூடுதலாக சேர்க்கவும்.
Z2 சமச்சீர் தகவலை இணைக்க `` Z2Symmetries`` வகுப்பைச் சேர்க்கவும், மேலும் ஒரு ஆபரேட்டரைத் தட்டச்சு செய்வதற்கான உதவி முறைகள் உள்ளன.
அலைவீச்சு மதிப்பீடு: அதிகபட்ச சாத்தியக்கூறுகள் போஸ்ட்ரோசெசிங் மற்றும் நம்பிக்கை இடைவெளி கணக்கீடு சேர்க்கப்பட்டது.
அதிகபட்ச அளவிலான மதிப்பீடுகள் Amplitude Estimation (MLAE): அதிக அளவிலான மதிப்பீடுகள் அடிப்படையாகக் கணிசமான மதிப்பீடுகளுக்கான புதிய படிமுறை கணினி மதிப்பீடுகள் மற்றும் சுற்றுச்சூழல் ஆழம் குறைக்கிறது.
சேர்க்கப்பட்ட (துல்லியமான) சார்ந்த மற்றும் பல்லுறுப்புக்கோவை கட்டுப்படுத்தப்பட்ட Pauli-சுழற்சி சுழற்சி.
ஒரு மூலக்கூறின் உற்சாகமான நிலையைப் படிக்க `` q_equation_of_motion`` ஐச் சேர்த்து, குறிப்பு நிலையைத் தயாரிக்க இரண்டு வழிமுறைகளைச் சேர்க்கவும்.
மாற்றப்பட்டது¶
'' mct ` ` அடிப்படையிலான டோஃப்லோலி கேட்களை பயன்படுத்தி இடைநிலை முடிவுகளைக் கட்டுவதற்கு ` `basic ` `.
Qiskit டெரரா புதியது அறிமுகப்படுத்தப்பட்ட ` ` Qubit ` ` வகுப்பு.
உள்ளீடு
Operatorsபொருள்களை மாற்றுவதில் இருந்து `` QPE / IQPE`` ஐத் தடுக்கவும்.PyEDA சார்பு நீக்கப்பட்டது; தொடர்புடைய ஆரக்கிள்களின் அடிப்படை தர்க்க செயல்பாடுகள் இப்போது SymPy-யால் கையாளப்படுகின்றன.
`` Operator`` வகுப்பை மாற்றியமைத்து, ஒவ்வொரு பிரதிநிதித்துவத்திற்கும் அதன் சொந்த வகுப்பு
MatrixOperator,WeightedPauliOperatorமற்றும்TPBGroupedPauliOperatorஆகியவை உள்ளன.சி. ஆர். இசட் கேட்டில் உள்ள தீட்டாவில்
evolution_instructionஇல் உள்ளpowerநேரடியாகப் பயன்படுத்தப்பட்டது, புதிய பதிப்பு சக்தியைச் செயல்படுத்த சுற்றுகளை மீண்டும் செய்கிறது.சர்க்யூட்கேச் இயல்பாகவே முடக்கப்பட்டுள்ளது, இப்போது அதை சூழல் மாறி வழியாக `` QISKIT_AQUA_CIRCUIT_CACHE`` என அமைக்கலாம்.
பிழை திருத்தங்கள்¶
`` TruthTableOracle`` ஒரு `` 1`` மதிப்பைக் கொண்ட உண்மை அட்டவணைகளுக்கு தவறான சுற்றுகளை உருவாக்கும் பிழை.
`` PyEDA`` உறுதியற்ற தன்மையால் ஏற்பட்ட பிழை.
`` QPE / IQPE` இன் மொழிபெயர்ப்பு மற்றும் நீட்டிப்பு கணக்கீடு கொண்ட பிழை.
வேதியியல்: எண் குவிட்ஸ் 2 இன் சக்தியாக இல்லாதபோது பிராவி-கிட்டேவ் மேப்பிங் சரி செய்யப்பட்டது
` ` QuantumInstance ` ` ஒரு பட்டியலால் ` ` initial_layout` ` துவக்குகிறது.
சேய்மையான¶
பொது பல கட்டுப்பாட்டு சுழற்சி கேட் `` mcu3`` அகற்றப்பட்டு பல கட்டுப்பாட்டு சுழற்சி கேட்கள் `` mcrx``, `` mcry``, மற்றும் `` mcrz`` ஆகியவற்றால் மாற்றப்படுகின்றன
நீக்கப்படும்¶
`` Opertator`` வகுப்பு நீக்கப்பட்டது,
MatrixOperator,WeightedPauliOperatorமற்றும்TPBGroupedPauliOperatorஆகியவற்றைப் பயன்படுத்துவதற்கு ஆதரவாக.
IBM Q Provider 0.3¶
எந்த மாற்றங்களும் இல்லை
Qiskit 0.11.1¶
Qiskit மைக்ரோ பதிப்பை 0.11.1 ஆக உயர்த்தியுள்ளோம், ஏனெனில் ஐபிஎம் கியூ வழங்குநர் அதன் மைக்ரோ பதிப்பையும் மோதியுள்ளது.
Terra 0.8¶
எந்த மாற்றமும் இல்லை
Aer 0.2¶
எந்த மாற்றங்களும் இல்லை
Ignis 0.1¶
எந்த மாற்றமும் இல்லை
Aqua 0.5¶
கேட்கள் தலைகீழாக எவ்வாறு செய்யப்படுகின்றன என்பதற்கான மாற்றங்கள் தொடர்பான குறியீட்டை சரிசெய்ய qiskit-aqua "0.5.3`` என புதுப்பிக்கப்பட்டுள்ளது.
IBM Q Provider 0.3¶
பின்தங்கிய பொருந்தக்கூடிய சிக்கல்களை சரிசெய்ய `` 0.3.1`` பதிப்பிற்கு `` IBMQProvider`` புதுப்பிக்கப்பட்டுள்ளது மற்றும் IBM Q API v2 க்கான ஒற்றை அழைப்புகளில் இயல்புநிலை 10 வேலை வரம்புடன் வேலை செய்கிறது.
Qiskit 0.11¶
Qiskit சிறு பதிப்பை 0.11 ஆக உயர்த்தியுள்ளோம், ஏனெனில் ஐபிஎம் கியூ வழங்குநர் அதன் சிறிய பதிப்பையும் அதிகரித்துள்ளது. ஏரில், நாங்கள் 0.2.1 இலிருந்து 0.2.3 ஆக உயர்ந்தோம், ஏனெனில் 0.2.2 ஐ வெளியிட்டபின்னும், Qiskit 0.11 ஆன்லைனில் செல்வதற்கு முன்பும் ஒரு சிக்கல் கண்டறியப்பட்டது.
Terra 0.8¶
எந்த மாற்றமும் இல்லை
Aer 0.2¶
புதிய அம்சங்கள்¶
பல கட்டுப்பாட்டு கட்ட வாயில்களுக்கான ஆதரவு சேர்க்கப்பட்டது
ஒதுக்கப்பட்ட ஒற்றை-வரைபடம் ஒற்றை-கிட் கேட்களை சேர்க்கப்பட்டது
மேம்பாடுகள்¶
சர்க்யூட் எக்ஸிக்யூஷனின் செயல்திறனை அதிகரிக்கும் ஃப்யூஷன் எனப்படும் ஒரு நுட்பத்தை அறிமுகப்படுத்தியது, மிகவும் பொதுவான காட்சிகளில் செயல்திறனைப் பெற டியூன் செய்யப்பட்ட த்ரெட்டிங் உத்தி.
ஏற்கெனவே செயல் செய்யப்பட்ட பிழை மாதிரிகளில் சில புள்ளிகள் செய்யப்பட்டுள்ளன.
Ignis 0.1¶
எந்த மாற்றமும் இல்லை
Aqua 0.5¶
எந்த மாற்றமும் இல்லை
IBM Q Provider 0.3¶
புதிய IBM Q அனுபவம் v2 <https://quantum-computing.ibm.com> __ ஐப் பயன்படுத்த இயல்புநிலையாக `` IBMQProvider`` புதுப்பிக்கப்பட்டுள்ளது. வெளியீட்டில் இருந்து ஒரு மாதம் அதன் இறுதி நீக்கம் வரை ஐபிஎம் கியூ எக்ஸ்பீரியன்ஸ் வி 1 மற்றும் க்யூ கன்சோல் 0.3.x வரியின் போது ஆதரிக்கப்படும். புதிய செயல்பாடு மற்றும் அம்சங்களைப் பயன்படுத்த புதிய ஐபிஎம் கியூ அனுபவத்திற்கு புதுப்பிக்க ஊக்குவிக்கப்படுகிறது.
புதிய IBM Q எக்ஸ்பீரியன்ஸ் v2 புதுப்பிக்கப்படுகிறது¶
வட்டில் சேமிக்கப்பட்டுள்ள ஐபிஎம் கியூ எக்ஸ்பீரியன்ஸ்க்கான சான்றுகளை நீங்கள் வைத்திருந்தால், நீங்கள் ஊடாடும் உதவியாளரைப் பயன்படுத்தலாம்:
from qiskit import IBMQ
IBMQ.update_account()
மேலும் சிக்கலான வழக்குகள் அல்லது நன்றாக உங்கள் வடிவமைப்பு, பின்வரும் முறைகள் கிடைக்கப்பெறுகின்றன:
` ` IBMQ.delete_accounts() ` ` உங்கள் உள்ளமைவு கோப்பை மறுபடியும் பயன்படும்.
'IBM Q Experience v2 <https://quantum-computing.ibm.com>` __ கணக்கு பக்கத்தில் உள்ள வழிமுறைகளைப் பின்பற்றி, உங்கள் சான்றுகளைச் சேமிக்க `` IBMQ.save_account ('MY_TOKEN') `` முறையைப் பயன்படுத்தலாம்.
உங்கள் நிரல்களைப் புதுப்பித்தல்¶
வழங்குநர் மூலம் புதிய ஐபிஎம் கியூ எக்ஸ்பீரியன்ஸ் வி 2 ஐப் பயன்படுத்தும் போது, பின்தளத்தில் அணுகல் தனிப்பட்ட `` provider`` நிகழ்வுகள் வழியாக செய்யப்படுகிறது (முந்தைய பதிப்புகளைப் போலவே `` qiskit.IBMQ`` பொருள் வழியாக அவற்றை நேரடியாக அணுகுவதற்கு மாறாக) நீங்கள் பயன்படுத்தும் திட்டத்தின் மீது மேலும் நுணுக்க கட்டுப்பாட்டுக்கு.
`` IBMQ.providers () `` மற்றும் `` IBMQ.get_provider () `` முறைகள்:: ஐப் பயன்படுத்துவதற்கான அணுகல் உங்களுக்கு providers பற்றிய குறிப்பைப் பெறலாம்:
from qiskit import IBMQ
provider = IBMQ.load_account()
my_providers = IBMQ.providers()
provider_2 = IBMQ.get_provider(hub='A', group='B', project='C')
வசதிக்காக, `` IBMQ.load_account () `` மற்றும் `` IBMQ.enable_account () `` திறந்த அணுகல் திட்டத்திற்கான ஒரு வழங்குநரைத் தரும், இது புதிய IBM Q அனுபவம் v2 இல் இயல்புநிலையாகும்.
எடுத்துக்காட்டாக, முந்தைய பதிப்புக்களில் பின்வரும் நிரல்:
from qiskit import IBMQ
IBMQ.load_accounts()
backend = IBMQ.get_backend('ibmqx4')
backend_2 = IBMQ.get_backend('ibmq_qasm_simulator', hub='HUB2')
தற்போதைய பதிப்பில் பின்வரும் நிரலுக்கு சமமானது:
from qiskit import IBMQ
provider = IBMQ.load_account()
backend = provider.get_backend('ibmqx4')
provider_2 = IBMQ.get_provider(hub='HUB2')
backend_2 = provider_2.get_backend('ibmq_qasm_simulator')
IBM Q வழங்குநர் ஆவணத்தில் <https://github.com/Qiskit/qiskit-ibmq-provider> __ இல் கூடுதல் தகவல்களையும் விவரங்களையும் காணலாம்.
Qiskit 0.10¶
Terra 0.8¶
எந்த மாற்றமும் இல்லை
Aer 0.2¶
எந்த மாற்றமும் இல்லை
Ignis 0.1¶
எந்த மாற்றமும் இல்லை
Aqua 0.5¶
எந்த மாற்றமும் இல்லை
IBM Q Provider 0.2¶
புதிய அம்சங்கள்¶
`` IBMQProvider`` IBM Q API இன் புதிய பதிப்பை இணைக்க ஆதரிக்கிறது. இந்த பதிப்பிற்கான ஆதரவு இன்னும் சோதனைக்குரியது என்பதை நினைவில் கொள்க:pull_ibmq-provider: 78.
புதிய ஏபிஐ மூலம் சுற்றுகளுக்கு ஆதரவு சேர்க்கப்பட்டது:pull_ibmq-provider: 79.
பிழை திருத்தங்கள்¶
சில API மைய மையங்களின் நிலையான தவறான பாகுபடுத்தல்:pull_ibmq-provider: 77.
தொலைநிலை சிமுலேட்டர்களுக்கான நிலையான இரைச்சல் மாதிரி கையாளுதல்:pull_ibmq-provider: 84.
Qiskit 0.9¶
Terra 0.8¶
சிறப்பம்சங்கள்¶
துடிப்பு கட்டளைகளை உருவாக்குவது, துடிப்பு சேனல்களில் திட்டமிடுதல், காட்சிப்படுத்தல் மற்றும் ஐபிஎம் கியூ சாதனங்களில் அவற்றை இயக்குவதற்கான கருவிகளை உள்ளடக்கிய `` qiskit.pulse`` இன் கீழ் துடிப்பு தொகுதி அறிமுகம்.
மேம்படுத்தப்பட்ட குவாண்டம் சர்க்யூட் மற்றும் அறிவுறுத்தல் வகுப்புகள், தன்னிச்சையான துணை சுற்றுகளை பெரிய சுற்றுகளாக உருவாக்க அனுமதிக்கிறது, மேலும் அளவுருவாக்கப்பட்ட சுற்றுகளை உருவாக்குவதற்கும் அனுமதிக்கிறது.
`` Qiskit.quantum_info`` இன் கீழ் ஒரு சக்திவாய்ந்த குவாண்டம் தகவல் தொகுதி, ஆபரேட்டர்கள் மற்றும் சேனல்களுடன் பணிபுரிய மற்றும் அவற்றை சுற்றுகளுக்குள் பயன்படுத்த கருவிகளை வழங்குகிறது.
புதிய டிரான்ஸ்பைலர் தேர்வுமுறை கடந்து செல்கிறது மற்றும் முன் வரையறுக்கப்பட்ட டிரான்ஸ்பைலிங் நடைமுறைகளுக்கான அணுகல்.
புதிய அம்சங்கள்¶
`` StochasticSwap`` வழக்கமான Cython <https://cython.org/> __ இல் செயல்படுத்தப்படுகிறது.
குவாண்டம் சேனல்கள் மற்றும் CPTP வரைபடங்களைக் கையாள `` QuantumChannel`` வகுப்புகள் சேர்க்கப்பட்டன.
அளவுரு சுற்றுகளுக்கான ஆதரவு.
'' PassManager`` இடைமுகம் மேம்படுத்தப்பட்டு, தனிப்பயன் பாஸ் மேலாளர்களுடன் எளிதாக தொடர்பு கொள்ளவும் பயன்படுத்தவும் புதிய செயல்பாடுகள் சேர்க்கப்பட்டுள்ளன.
முன்னமைக்கப்பட்ட `` பாஸ் மேனேஜர்`` கள் இப்போது சேர்க்கப்பட்டுள்ளன, அவை முன்னரே தீர்மானிக்கப்பட்ட டிரான்ஸ்பைலர் பாஸ்களை வழங்குகின்றன.
சில செயல்பாடுகளுக்கான இயல்புநிலை மதிப்புகளை உள்ளூர் சூழல்கள் மேலெழுத அனுமதிக்கும் பயனர் உள்ளமைவு கோப்புகள்.
புதிய டிரான்ஸ்பைலர் கடந்து செல்கிறது:
EnlargeWithAncilla,Unroll2Q,NoiseAdaptiveLayout,OptimizeSwapBeforeMeasure,RemoveDiagonalGatesBeforeMeasure,CommutativeCancellation,Collect2qBlocks, மற்றும்ConsolidateBlocks.
ஒத்திசைவு கொள்கைகள்¶
0.8 வெளியீடுகளின் பகுதியாக பின்வரும் விஷயங்கள் புதுப்பிக்கப்பட்டு, அல்லது ஒரு எதிர்காமல் வெளியீட்டில் ஒரு பின்னணி முறையில் நீக்கப்படும் அல்லது மாற்றியமைக்கப்படும். சரியாக தேவையில்லையென்றால், எதிர்காலத்தில் ஒரு வெடிப்பு மாற்றத்தை தவிர்க்க 0.9 (இல்லையென்றால்) விடுதலை செய்யும் விஷயங்கள்.
` DAGCircuit`` பொருளில் `` _ஜெட்`` மூலம் முன்னொட்டுள்ள முறைகள் அந்த முன்னொட்டு இல்லாமல் மறுபெயரிடப்படுகின்றன.
டூப்பிள்களிலிருந்து பட்டியல்களுக்கு `` கூப்பிங் மேப்பின்` `` இணைப்பு பட்டியலில்` மாற்றப்பட்ட கூறுகள்.
அலுவலர் தளங்கள் இப்போது வெளிப்படையாகக் கொண்டிருக்க வேண்டும், மற்றும் உள்வாங்கும் ஒரு தகவல் ` ` QiskitError ` `.
`` Qiskit.tools.qcvv`` தொகுப்பு நீக்கப்பட்டது மற்றும் எதிர்காலத்தில் அகற்றப்படும். இந்த தொகுதியை மாற்றும் கிஸ்கிட் இக்னிஸைப் பயன்படுத்த நீங்கள் இடம்பெயர வேண்டும்.
`` Qiskit.compile () `` செயல்பாடு இப்போது வெளிப்படையாக `` qiskit.compiler.transpile () `` ஒரு சுற்றுவட்டத்தை மாற்றுவதற்கான செயல்பாட்டைப் பயன்படுத்துவதற்கு ஆதரவாக நீக்கப்பட்டது, அதைத் தொடர்ந்து `` qiskit.compiler.assemble () `` அதிலிருந்து ஒரு கோப்ஜை உருவாக்க. `` தொகுத்தல் (...) `` என்பதற்கு பதிலாக, `` ஒன்றுகூடு (டிரான்ஸ்பைல் (...), ...) `` ஐப் பயன்படுத்தவும்.
` qiskit.converters.qobj_to_circuits () `` நீக்கப்பட்டது மற்றும் எதிர்கால வெளியீட்டில் அகற்றப்படும். அதற்கு பதிலாக `` qiskit.assembler.disassemble () `` தொகுக்கப்பட்ட Qobj இலிருந்து `` QuantumCircuit`` பொருட்களைப் பிரித்தெடுக்கப் பயன்படுத்தப்பட வேண்டும்.
`` Qiskit.mapper`` பெயர்வெளி நீக்கப்பட்டது. `` லேஅவுட்`` மற்றும் `` கப்ளிங் மேப்`` வகுப்புகளை `` qiskit.transpiler`` வழியாக அணுகலாம்.
`` Qiskit.tools.qi.qi`` இல் உள்ள சில செயல்பாடுகள் நீக்கப்பட்டு `` qiskit.quantum_info`` க்கு நகர்த்தப்பட்டுள்ளன.
இந்த விடுதலை போது சில பின்னணி மாற்றங்கள் செய்யப்பட்டுள்ளது என்று குறிப்பிடுக. பின்வரும் குறிப்புகள் இந்த மாற்றங்களை எப்படி ஏற்றுக்கொள்ளும் எப்படி தகவல்களை கொண்டுள்ளது.
IBM Q வழங்குபவர்¶
அவர் ஐபிஎம் கியூ வழங்குநர் முன்பு டெர்ராவில் சேர்க்கப்பட்டார், ஆனால் அது ஒரு தனி தொகுப்பாக பிரிக்கப்பட்டுள்ளது `` கிஸ்கிட்-இப்மக்-வழங்குநர்``. `` பிப் இன்ஸ்டால் கிஸ்கிட்-இப்மக்-வழங்குநர்`` உடன் பைபி வழியாகவோ அல்லது `` கிஸ்கிட்.ஐ.பி.எம்.கியூ`` அல்லது `` qiskit.providers.ibmq`` ஐ அணுக மூலத்திலிருந்து இது நிறுவப்பட வேண்டும். `` பிப் இன்ஸ்டால் கிஸ்கிட்`` உடன் நீங்கள் கிஸ்கிட்டை நிறுவினால், அது தானாகவே கிஸ்கிட் திட்டத்தின் அனைத்து துணைப் பொதிகளையும் நிறுவும்.
சைதான் கூறுகள்¶
0.8 வெளியீட்டில் தொடங்கி, கோர் ஸ்டோகாஸ்டிக் ஸ்வாப் வழக்கம் இப்போது Cython <https://cython.org/> __ இல் செயல்படுத்தப்படுகிறது. ஸ்வாப்பரின் செயல்திறனை கணிசமாக மேம்படுத்துவதற்காக இது செய்யப்பட்டது, இருப்பினும் நீங்கள் டெர்ராவை மூலத்திலிருந்து உருவாக்கினால் அல்லது x86 அல்லாத அல்லது பிற இயங்குதளத்தில் முன் கட்டப்பட்ட சக்கரங்கள் இல்லாமல் இயங்கினால் மற்றும் மூல விநியோகத்திலிருந்து நிறுவினால், நீங்கள் முன்பு சைதான் நிறுவியிருப்பதை உறுதி செய்ய வேண்டும். Qiskit டெர்ராவை நிறுவ / கட்டமைக்க. பிப் / பைபி மூலம் இதை எளிதாக செய்யலாம்: `` pip install Cython``.
கம்பைலர் பணிப்பாய்வு¶
``` Qiskit.compile () `` செயல்பாடு நீக்கப்பட்டு, முதலில் `` qiskit.compiler.transpile () `` ஐ அழைப்பதன் மூலம் ஒரு சுற்றுவட்டத்தில் தேர்வுமுறை மற்றும் மேப்பிங்கை இயக்கவும், பின்னர் `` qiskit.compiler.assemble () `` ஒரு பின்தளத்தில் அனுப்ப அந்த உகந்த சுற்றிலிருந்து ஒரு கோப்ஜ் உருவாக்க. இது ஒரு நீக்கம் மட்டுமே என்றாலும், நீங்கள் பழைய `` qiskit.compile () `` அழைப்பைப் பயன்படுத்தினால் அது ஒரு எச்சரிக்கையை வெளியிடும்.
transpile(), assemble(), execute() parameters
இந்த செயல்பாடுகள் அதிக சுமை மற்றும் பரந்த அளவிலான உள்ளீடுகளை ஏற்றுக்கொள்கின்றன. அவர்கள் சுற்று மற்றும் துடிப்பு உள்ளீடுகளை கையாள முடியும். இந்த செயல்பாடுகளுக்கான `` பின்தளத்தில்`` தவிர அனைத்து குவார்க்குகளும் இப்போது முன்னர் ஏற்றுக்கொள்ளப்பட்ட வகைகளின் பட்டியல்களையும் ஏற்றுக்கொள்கின்றன. `` ஆரம்ப_ லேஅவுட்`` குவார்க் இப்போது பட்டியல் மற்றும் அகராதி இரண்டாக வழங்கப்படலாம், எ.கா. 13 மற்றும் 14 குவிட்களில் பெல் பரிசோதனையை வரைபடமாக்க, நீங்கள் வழங்கலாம்: `` ஆரம்ப_லேயவுட் = [13, 14] `` அல்லது `` ஆரம்ப_லேயவுட் = {qr [0]: 13, qr [1]: 14} ```
Qobj¶
பயன்பாட்டு வழக்கைப் பொறுத்து Qobj வகுப்பு இரண்டு தனித்தனி துணைப்பிரிவுகளாக பிரிக்கப்பட்டுள்ளது, முறையே துடிப்பு மற்றும் சுற்று வேலைகளுக்கு `` PulseQobj`` அல்லது QasmQobj. நீங்கள் நேரடியாக கோப்ஜுடன் தொடர்புகொள்கிறீர்கள் என்றால் அதற்கேற்ப உங்கள் பயன்பாட்டை சரிசெய்ய வேண்டியிருக்கும்.
` ` qiskit.qobj.qobj_to_dict () ` ` நீக்கப்பட்டுள்ளது. அதற்கு பதிலாக ` `to_dict () ` ` ஒரு Qobj பொருளின் வழிமுறையை பயன்படுத்த.
காட்சிப்படுத்தல்¶
காட்சிப்படுத்தல் தொகுதிக்கு மிகப்பெரிய மாற்றம் இது `` qiskit.tools.visualization`` இலிருந்து `` qiskit.visualization`` க்கு நகர்த்தப்பட்டுள்ளது. காட்சிப்படுத்தல் தொகுதி ஒரு கருவியை விட அதிகம் என்பதைக் குறிக்க இது செய்யப்பட்டது. இருப்பினும், 0.7 வெளியீட்டில் இந்த இடைமுகம் நிலையானதாக அறிவிக்கப்பட்டதால், `` qiskit.tools.visualization`` இன் பொது இடைமுகம் தொடர்ந்து செயல்படும். எதிர்கால வெளியீட்டில் அது மாறக்கூடும், ஆனால் அது நடந்தால் அகற்றப்படுவதற்கு முன்பு அது நீக்கப்படும்.
முன்னர் நீக்கப்பட்ட செயல்பாடுகள், plot_circuit(), latex_circuit_drawer(), generate_latex_source() மற்றும் matplotlib_circuit_drawer() qiskit.tools.visualization இலிருந்து நீக்கப்பட்டன. இந்த செயல்பாடுகளுக்கு பதிலாக, qiskit.visualization.circuit_drawer () ஐ பொருத்தமான வாதங்களுடன் அழைப்பது பயன்படுத்தப்பட வேண்டும்.
`` style`` குவார்க் அகராதியில் முன்னர் நீக்கப்பட்ட `` plot_barries`` மற்றும் `` reverse_bits`` விசைகள் நீக்கப்பட்டன, அதற்கு பதிலாக `` qiskit.visualization.circuit_drawer () `` குவார்க்ஸ் plot_barries மற்றும் ``reverse_bits `` பயன்படுத்தப்பட வேண்டும்.
விக்னர் சதி செயல்பாடுகள் `` plot_wigner_function``, `` plot_wigner_curve``, `` plot_wigner_plaquette``, மற்றும் `` plot_wigner_data`` முன்பு `` qiskit.tools.visualization._state_visualization`` தொகுதியில் நீக்கப்பட்டன. அவை ஒருபோதும் பொது நிலையான இடைமுகத்தின் மூலம் வெளிப்படுத்தப்படவில்லை மற்றும் நன்கு ஆவணப்படுத்தப்படவில்லை. இந்த அம்சத்தைப் பயன்படுத்துவதற்கான குறியீட்டை கிஸ்கிட்-டுடோரியல் களஞ்சியத்தின் மூலம் இன்னும் அணுகலாம்.
மேப்பர்¶
`` Qiskit.mapper`` இலிருந்து பொது Api `` qiskit.transpiler`` க்கு நகர்த்தப்பட்டது. இந்த வெளியீட்டில் மட்டுமே அது நீக்கப்பட்டிருந்தாலும், இது 0.9 வெளியீட்டில் அகற்றப்படும், எனவே `` கிஸ்கிட் 'க்கு பதிலாக `` கிஸ்கிட்.ரான்ஸ்பைலர்`` இலிருந்து இறக்குமதி செய்ய உங்கள் `` லேஅவுட்`` மற்றும் `` கப்ளிங் மேப்`` ஆகியவற்றைப் பயன்படுத்துகிறது. அது நடப்பதற்கு முன் மேப்பர் எதிர்காலத்தில் எந்த ஆச்சரியங்களையும் தவிர்க்கும்.
Aer 0.2¶
புதிய அம்சங்கள்¶
மல்டிபிளெக்சர் கேட் சேர்க்கப்பட்டது: pull_aer: `192
` noise.utils`` இல் `` remap_noise_model`` செயல்பாடு சேர்க்கப்பட்டது:pull_aer: 181
`` NoiseModel``, `` QuantumError``, `` ReadoutError``: pull_aer: 181 இல்` __eq__` முறையைச் சேர்த்தது.
இரைச்சல் மாதிரிகளில் பெயரிடப்பட்ட கேட்களுக்கான ஆதரவு சேர்க்கப்பட்டது :pull_aer:` 175 `
உகந்ததாக `` mcx``, `` mcy``, `` mcz``, `` mcu1``, `` mcu2``, `` mcu3``, `` QubitVector`` க்கு கேட்கள் சேர்க்கப்பட்டுள்ளன :pull_aer: `124 `
`` QubitVector`` இல் உகந்த கட்டுப்பாட்டு-இடமாற்று கேட் சேர்க்கப்பட்டது:pull_aer: 142
`` QasmController`` க்கான கேட்-ஃப்யூஷன் தேர்வுமுறை சேர்க்கப்பட்டது, இது `` fusion_enable=true``:pull_aer: 136
தோல்வியுற்ற உருவகப்படுத்துதல்களின் சிறந்த நிர்வாகத்தைச் சேர்த்தது:pull_aer: `167
சேர்க்கப்பட்ட குவிட்கள் பயன்படுத்தப்படாத க்விட்களுக்கான தேர்வுமுறை துண்டிக்கப்படுகின்றன:pull_aer: `164
சாதன இரைச்சல் மாதிரியில் டிப்போலரைசிங் பிழையை முடக்கும் திறன் சேர்க்கப்பட்டது: pull_aer: `131
`` ஸ்டேட்வெக்டர்_ஸ்டேட்`` க்கு சிமுலேட்டர் அறிவுறுத்தலைத் துவக்கியது: pull_aer: 117 ,: pull_aer:` 137
சிமுலேட்டர்களில் இணைப்பு வரைபடங்கள் சேர்க்கப்பட்டன:pull_aer: 93
சுற்று உகப்பாக்கம் கட்டமைப்பைச் சேர்த்தது:pull_aer: 83
கூடுதலாக :pull_aer:` 71 , :pull_aer: 177 `
டெபியன் போன்ற விநியோகங்களுக்கு சக்கரங்கள் துணைபுரிகின்றன: pull_aer: `69
Qasm சிமுலேட்டருக்கான நூல்களின் தானியங்கு கட்டமைப்பு சேர்க்கப்பட்டது: pull_aer: 61
நிலைப்படுத்தி தரவரிசை சிதைவுகளை அடிப்படையாகக் கொண்ட உருவகப்படுத்துதல் முறை: pull_aer: 51
`` NoiseModel`` init: pull_aer: 175 இல்` அடிப்படை_கேட்ஸ்` குவார்க் சேர்க்கப்பட்டது.
நிலையான json நூலகத்தைப் பயன்படுத்தி தொடர்ச்சியாக வரிசைப்படுத்தக்கூடிய அகராதிகளைத் திருப்புவதற்கு `` NoiseModel.as_dict () `` க்கு ஒரு விருப்ப அளவுருவைச் சேர்த்தது: pull_aer: 165
மறுசீரமைப்பு நூல் மேலாண்மை: pull_aer: `50
இரைச்சல் மாற்றங்களை மேம்படுத்தவும்: pull_aer: 162
பிழை அறிக்கையை மேம்படுத்தவும்: pull_aer: 160
`` அதிகபட்சம்_மெமரி_எம்பி`` உடன் இணையான செயல்திறனை மேம்படுத்தவும் `` பின்தளத்தில்_ஒப்டிஸின்` புதிய அளவுரு: pull_aer: 61
`` ஸ்டேட்வெக்டர்`` இல் u1 செயல்திறனை மேம்படுத்தவும்: pull_aer: `123
பிழை திருத்தங்கள்¶
டெர்ரா செருகு நிரலுக்கான மேகோஸில் நிலையான ஓப்பன் எம்.பி மோதல் சிக்கல்கள்: pull_aer: `46
ஒத்திசைவு கொள்கைகள்¶
`` காஸ்மிமுலேட்டர்`` மற்றும் `` ஸ்டேட்வெக்டர் சிமுலேட்டர்``: புல்_ஆயர்: `185
`` "சாப்_தெரெஷோல்ட்" `` பின்தளத்தில் விருப்பத்தை `` "ஜீரோ_தெரெஷோல்ட்" என மாற்றி, இயல்புநிலை மதிப்பை 1e-10 ஆக மாற்றியது: pull_aer: 185
Ignis 0.1¶
புதிய அம்சங்கள்¶
குவாண்டம் தொகுதி
வெப்பம் சிக்குறுத்தும் வளிமண்டலங்கள்
ஒரே நேரத்தில் ஆர். பி. க்கு கிளிஃபோர்ட் வாயில்களை துணைக்குழுக்களில் சீரமைக்க விருப்பம் உள்ளது
அளவீட்டு திருத்தம் குவிட்களின் துணைக்குழுவுக்கு புதிய அளவுத்திருத்தத்தை உருவாக்க முடியும்
ஒத்திசைவு கொள்கைகள்¶
RB கிளாசிக்கல் பதிவேடுகளின் குறைந்தபட்ச தொகுப்பிற்கு எழுதுகிறது (இது Q [i] -> C [i] ஆக இருந்தது). இந்த மாற்றம் RB உடன் அளவீட்டு திருத்தத்தை செயல்படுத்துகிறது. பயனர்களுக்கு வெளிப்புற பகுப்பாய்வுக் குறியீடு இல்லையென்றால், இது விளைவுகளை மாற்றாது. 0.1 இலிருந்து RB சுற்றுகள் 0.1.1 பொருத்திகளுடன் பொருந்தாது.
Aqua 0.5¶
புதிய அம்சங்கள்¶
`` LinearSystemInput`` ஐ ஆதரிக்கும் எச். எச். எல் வழிமுறையை செயல்படுத்துதல்
`` EigQPE`` மாறுபாட்டுடன் சொருகக்கூடிய கூறு `` Eigenvalues``
`` LookupRotation`` மற்றும்
LongDivisionஆகிய வகைகளுடன் செருகக்கூடிய கூறு `` பரஸ்பர``பல கட்டுப்படுத்தப்பட்ட U1 மற்றும் U3 செயல்பாடுகள் `` mcu1`` மற்றும் `` mcu3``
சொருகக்கூடிய கூறு `` QFT`` `` IQFT`` கூறுகளிலிருந்து பெறப்பட்டது
DEBUG பதிவு மட்டத்தில் கடத்தப்பட்ட சுற்றுகளை சுருக்கமாகக் கூறினார்
` ` QuantumInstance ` ` ` basis_gates ` ` and ` coupling_map ` ` மீண்டும் ஏற்றுக்கொள்ளும்.
`` RY`` மற்றும் `` RYRZ`` மாறுபட்ட வடிவத்தில் சிக்கலுக்கு `` cx`` வாயிலைப் பயன்படுத்துவதற்கான ஆதரவு (`` cz`` இயல்புநிலை தேர்வு)
QAOA இல் தன்னிச்சையான கலவை ஹாமில்டோனியனைப் பயன்படுத்துவதற்கான ஆதரவு, கட்டுப்படுத்தப்பட்ட தேர்வுமுறை சிக்கல்களில் QAOA ஐப் பயன்படுத்த அனுமதிக்கிறது [arXiv: 1709.03489]
`` VQE`` மற்றும் `` QSVMVariational`` ஆகியவற்றால் செயல்படுத்தப்பட்ட மாறுபட்ட வழிமுறை அடிப்படை வகுப்பு `` VQAlgorithm`` சேர்க்கப்பட்டது
டாக்லெக்ஸின் தேர்வுமுறை மாதிரிகளிலிருந்து ஐசிங் ஹாமில்டோனியனை தானாக உருவாக்குவதற்கு
ising / docplex.pyசேர்க்கப்பட்டது`` Mct`` க்கு `` 'basic-dirty-ancilla'`` பயன்முறை சேர்க்கப்பட்டது
மல்டி கண்ட்ரோல்ட், மல்டி-டார்கெட் கேட்டுக்கு `` mcmt`` சேர்க்கப்பட்டது
தருக்க AND, OR, DNF (இடைவிடாத இயல்பான வடிவங்கள்) மற்றும் சி. என். எஃப் (ஒருங்கிணைந்த சாதாரண வடிவங்கள்) சூத்திரங்களிலிருந்து சுற்றுகளை உருவாக்குவதற்கான திறன்கள்
குயின்-மெக்ளஸ்கி மற்றும் எக்ஸாக்ட்கோவர் ஆகியவற்றை அடிப்படையாகக் கொண்ட விருப்ப தேர்வுமுறை கொண்ட ESOP (தயாரிப்புகளின் பிரத்யேக தொகை) சூத்திரங்களிலிருந்து சுற்றுகளை உருவாக்கும் திறனைச் சேர்த்தது
விருப்பமான தேர்வுமுறை திறனுடன் தன்னிச்சையான பூலியன் தர்க்க வெளிப்பாடுகளிலிருந்து (DIMACS ஆதரவு உட்பட) ஆரக்கிள் சுற்றுகளை உருவாக்குவதற்கு
LogicalExpressionOracleசேர்க்கப்பட்டதுவிருப்ப தேர்வுமுறை திறனுடன் உண்மை அட்டவணையில் இருந்து ஆரக்கிள் சுற்றுகளை உருவாக்குவதற்கு `` TruthTableOracle`` சேர்க்கப்பட்டது
பயனர் குறிப்பிட்ட சுற்றுகளிலிருந்து ஆரக்கிளை உருவாக்குவதற்கு `` CustomCircuitOracle`` சேர்க்கப்பட்டது
Deutsch-Jozsa வழிமுறையின் செயல்படுத்தல் சேர்க்கப்பட்டது
பெர்ன்ஸ்டைன்-வஜிராணி வழிமுறையின் செயல்பாட்டைச் சேர்த்தது
சைமனின் வழிமுறையின் செயல்பாட்டைச் சேர்த்தது
ஷோரின் வழிமுறையின் செயல்பாட்டைச் சேர்த்தது
ஒரு தனிப்பயன் ஆரம்ப நிலையை எடுக்கும் (முன்னிருப்பு அலுவலக சூப்பர்நிலைக்கு எதிராக)
ஏற்கனவே உள்ள சாளரத்தை பயன்படுத்தி ` ` தனிப்பயன் ` ` ஆரம்ப நிலையை உருவாக்க இயலவில்லை
ADAM (மற்றும் AMSGRAD) தேர்வுமுறை வழிமுறை சேர்க்கப்பட்டது
பன்முக விநியோகங்கள் சேர்க்கப்பட்டன, எனவே நிச்சயமற்ற மாதிரிகள் இப்போது ஒரே மாதிரியான மற்றும் பன்முக விநியோக கூறுகளைக் கொண்டுள்ளன
Added option to include or skip the swaps operations for qft and iqft circuit constructions
கூடுதலான நேர அமைப்பு அமைப்பு ` ` ExactLSsolver ` `
ஹெர்மிடியன் அல்லாத மற்றும் கணிதமற்றவர்களை ஆதரிப்பதற்காக `` எச்.எச்.எல்`` வழிமுறையில் `` ஆட்டோ_ஹெர்மிட்டியன்`` மற்றும் `` ஆட்டோ_ரசைஸ்`` அளவுருக்கள் சேர்க்கப்பட்டன: 2 ^ n அளவிலான மெட்ரிக்குகள்
மற்றொரு அம்ச வரைபடத்தைச் சேர்த்துள்ளார், `` ராஃபீச்சர்வெக்டர்``, இது வகைப்படுத்தலுக்கான அம்ச திசையன்களை க்விட்ஸின் நிலைகளுக்கு நேரடியாக வரைபடமாக்குகிறது
` ` QSVM ` ` ` SVM_ Classical ` ` இப்போது பயிற்சி செய்யப்பட்ட மாதிரிகளை ஏற்ற முடியும்
பிழை திருத்தங்கள்¶
Fixed ` `ising/docplex.py ` ` ` ` தவறான நிலையான மதிப்புகள் சரியாக மதிப்பிடப்பட்டுள்ளது
`` Setuptools.find_namespace_packages`` ஐப் பயன்படுத்தி பெயர்வெளி தொகுப்புகளை சரியாக அடையாளம் காண நிலையான தொகுப்பு அமைப்பு
ஒத்திசைவு கொள்கைகள்¶
QuantumInstanceஇனி ``memory'` ஐ எடுக்காது.ரெப்போவை பிரிக்க கட்டளை வரி மற்றும் GUI ஐ நகர்த்தியது (`` qiskit_aqua_uis``)
`` SAT``- குறிப்பிட்ட ஆரக்கிள் அகற்றப்பட்டது (இப்போது `` LogicalExpressionOracle`` ஆல் ஆதரிக்கப்படுகிறது)
`` Mct`` இன் `` மேம்பட்ட`` பயன்முறை செயல்படுத்தல் மாற்றப்பட்டது: `` ch`` க்கு பதிலாக எளிய `` h`` வாயில்களைப் பயன்படுத்துதல், மற்றும் `` _ மல்டிக்ஸ்`` இல் பழைய மறுநிகழ்வு படிநிலையை சரிசெய்தல்
கூறுகள் `` சீரற்ற_விளையாடல்கள்```` நிச்சயமற்ற_ மாதிரிகள்` என மறுபெயரிடப்பட்டது
பல்வேறு பொதுவான வாயில்களின் கட்டுமானங்களை மறுசீரமைத்தது (`` சி``, `` அழ``, `` எம். சி. ஆர்``, `` எம். சி. டி``, `` எம். சி 1``, `` எம். சி 3``, `` எம். சி. எம். டி``, `` லாஜிக்_ஆன்ட்``, மற்றும் `` லாஜிக்_அர்``) மற்றும் சுற்றுகள் (`` ஃபேஸ்எஸ்டிமேஷன் சர்க்யூட்``, `` பூலியன் லாஜிக் சர்க்யூட்ஸ்``, `` ஃபோரியர் டிரான்ஸ்ஃபார்ம் சர்க்யூட்ஸ்``, மற்றும் `` ஸ்டேட்வெக்டர் சர்க்யூட்ஸ்``)
மாறுபட்ட குவாண்டம் வகைப்படுத்தியைக் குறிக்கும் `` QSVM மாறுபாடு`` என்ற வழிமுறையை `` VQC`` என மறுபெயரிட்டது
`` QSVMKernel`` என்ற வழிமுறையை `` QSVM`` என மறுபெயரிட்டது
`` எஸ். வி. எம். இன்புட்`` என்ற வகுப்பை `` கிளாசிஃபிகேஷன்இன்புட்`` என மறுபெயரிட்டது
மறுபெயரிடப்பட்ட சிக்கல் வகை `` 'svm_classification'`` முதல்
' வகைப்பாடுவரைபட்டியல்களின் பட்டியலுக்கு `` அம்ச வரைபடம்`` மற்றும் `` மாறுபாட்டு வடிவம்`` ஆகியவற்றில் பயன்படுத்தப்படும் `` என்டாங்க்லர்_மாப்`` வகையை மாற்றியது
IBM Q வழங்குபவர் 0.1¶
புதிய அம்சங்கள்¶
இது ஒரு முழுமையான தொகுப்பாக முதல் வெளியீடாகும். நீங்கள் டெர்ரா தனித்தனியாக நிறுவுகிறீர்களானால், நீங்கள் ஐபிஎம் கியூ பின்தளத்தில் பயன்படுத்த விரும்பினால் `` கிஸ்கிட்-இப்மக்-வழங்குநர்`` தொகுப்பை `` பைப் நிறுவு கிஸ்கிட்-இப்மக்-வழங்குநர்`` உடன் நிறுவ வேண்டும்.
Qobj வடிவமைப்பு பணிகளுக்கு ஆதரவு வழங்குபவர் இருந்து நீக்கப்பட்டது. நீங்கள் சமர்ப்பிக்கப்படுவதற்கு முன்பு Qobj க்கு ஒரு பழைய வடிவத்தில் உரிமையை மாற்ற வேண்டும்.
Qiskit 0. 8¶
கிஸ்கிட் 0.8 இல் கிஸ்கிட் இக்னிஸ் உறுப்பை அறிமுகப்படுத்தினோம். இது கிஸ்கிட் டெர்ரா உறுப்பு 0.7.1 வெளியீட்டையும் உள்ளடக்கியது, இதில் பேசிக் ஏர் பைதான் சிமுலேட்டருக்கான பிழை திருத்தம் உள்ளது.
டெரா 0. 7¶
எந்த மாற்றமும் இல்லை
ஏர் 0.1¶
எந்த மாற்றமும் இல்லை
Ignis 0.1¶
இது Qiskit இக்னிஸின் முதல் வெளியீடு.
Qiskit 0. 7¶
Qiskit 0.7 இல் நாம் Qiskit Aer அறிமுகப்படுத்தப்பட்டு Qiskit டெரா சேர்ந்தது.
டெரா 0. 7¶
புதிய அம்சங்கள்¶
இந்த விடுதலை பல புதிய அம்சங்களையும் மற்றும் பல வழிப் படைப்புகளையும் உள்ளடக்குகிறது. இதன் மூலம் சுற்றுச்சூழல் வரைபடம், ஹிஸ்டோகிராம், பிளாக் வெக்டர்ஸ், மற்றும் மாநில விசைவுகளுக்கான இடைமுகங்கள் நிலையாக அறிவிக்கப்பட்டுள்ளன. கூடுதலாக இந்த விடுதலை ஒரு வரையறுக்கப்பட்ட மற்றும் நிலையான பிட் கோட்பாடு /endianness முழுவதும் Qiskit ஆகியவற்றை உள்ளடக்குகிறது. இவை அனைத்தும் இந்த விடுதலையில் நிலையான இடைமுகங்கள் என அறிவிக்கப்பட்டுள்ளன, இது எந்த மாற்றங்களையும் முன்னேற்றம் செய்கிறது.
பின்வரும் புதிய அம்சங்களின் அறிமுகம் உள்ளது:
புதிய ASCII கலை சுற்றுப்பாதை வெளியீட்டு முறைமை
`` குவாண்டம் சிர்க்யூட்`` பொருள்களின் புதிய சர்க்யூட் வரைதல் இடைமுகம், `` சர்க்யூட் டிரா () `` அல்லது `` அச்சு (சுற்று) `` அழைப்புகளைச் செயல்படுத்துகிறது
ஒரு சுற்றுவட்டத்தின் DAG பிரதிநிதித்துவத்தை வரைவதற்கான ஒரு காட்சிப்படுத்தல்
உள்ளூர் மேட்லோட்லிப் அடிப்படையிலான மாநில அடுக்குகளில் உள்ள ஹிண்டன் வரைபடங்களுக்கான புதிய குவாண்டம் மாநில சதி வகை
`` குவாண்டம் சர்க்யூட்`` வகுப்பிலிருந்து ``_காஸ்ம்_ஸ்ட்ர் ()` மற்றும் ஃப்ரம்_காஸ்ம்_ஃபைல் () `ஆகியவற்றிலிருந்து 2 புதிய கட்டமைப்பாளர் முறைகள், இது OpenQASM இலிருந்து ஒரு சுற்று பொருளை எளிதாக உருவாக்க உங்களை அனுமதிக்கிறது
ஒரு புதிய செயல்பாடு `` plot_bloch_multivector () `` ஒரு பதற்றமான மாநில திசையன் அல்லது அடர்த்தி மேட்ரிக்ஸிலிருந்து ப்ளொச் திசையன்களைத் திட்டமிட
ஒவ்வொரு ஷாட் அளவீட்டு முடிவுகள் சிமுலேட்டர்கள் மற்றும் தேர்ந்தெடுக்கப்பட்ட சாதனங்களில் கிடைக்கின்றன. `` தொகுத்தல் () `` அல்லது `` செயல்படுத்து () `` என்று அழைக்கும் போது `` மெமரி`` குவார்க்கை `` உண்மை`` என அமைப்பதன் மூலம் அணுகலாம், பின்னர் `` get_memory () `` முறையைப் பயன்படுத்தி அணுகலாம். `` முடிவு`` பொருள்.
புதுப்பிக்கப்பட்ட பவுலி பொருள்கள் மற்றும் குவாண்டம் நிலைகளுடன் பணிபுரியும் முறைகள் கொண்ட `` qiskit.quantum_info`` தொகுதி
சுற்று பகுப்பாய்வு மற்றும் மாற்றத்திற்கான புதிய டிரான்ஸ்பைல் பாஸ்கள்: `` கம்யூட்டேஷன் அனலிசிஸ்``, `` கம்யூட்டேஷன் டிரான்ஸ்ஃபார்மேஷன்``, `` சி. எக்ஸ் ரத்துசெய்தல்``, `` சிதைவு``, `` அன்ரோல்``, `` ஆப்டிமைஸ் 1 கியூட்ஸ்``, `` செக்மேப்``. , `` சி .எக்ஸ் டைரக்ஷன்``, `` பேரியர் பீஃபர்ஃபைனல் மெஷர்மென்ட்ஸ்``
டிரான்ஸ்பைலரில் புதிய மாற்று இடமாற்று மேப்பர் கடந்து செல்கிறது: `` பேசிக் ஸ்வாப்``, `` லுக்ஹெட் ஸ்வாப்``, `` ஸ்டோகாஸ்டிக் ஸ்வாப்``
மேலும் முன்னேற்றக் கூடுதலான தன்மைகள் ஆய்வுகளுக்கான ஆதரவுடன், மாற்றம் கடந்து, ஒரு உலகளாவிய ` ` வளைவு அமைப்பு ` ` கடவுச்சொல் நிர்வாகி, மற்றும் மீண்டும்-செல்வதற்கு கட்டுப்பாட்டை வரை
ஒத்திசைவு கொள்கைகள்¶
0.7 வெளியீட்டின் ஒரு பகுதியாக பின்வரும் விஷயங்கள் நீக்கப்பட்டன, மேலும் அவை எதிர்கால வெளியீட்டில் அகற்றப்படும் அல்லது பின்னோக்கி பொருந்தாத வகையில் மாற்றப்படும். கண்டிப்பாக அவசியமில்லை என்றாலும், அடுத்த வெளியீட்டிற்கு முன்னர் சரிசெய்ய வேண்டிய விஷயங்கள் முறிந்த மாற்றத்தைத் தவிர்க்கின்றன.
`` plot_circuit () ``, `` latex_circuit_drawer () ``, `` generate_latex_source () ``, மற்றும் `` matplotlib_circuit_drawer () `` qiskit.tools.visualization இலிருந்து நீக்கப்படும். அதற்கு பதிலாக, ஒரே தொகுதியிலிருந்து `` சர்க்யூட்_ டிராவர் () `` செயல்பாடு பயன்படுத்தப்பட வேண்டும், நீக்கப்பட்ட அனைத்து செயல்பாடுகளின் செயல்பாட்டையும் பிரதிபலிக்க குவார்க் விருப்பங்கள் உள்ளன.
தற்போதைய முன்னிருப்பு வெளியீடு ` ` சுற்றுச்சூழல் அலங்காரம் () ` ` (latex மற்றும் பைலோன் மீண்டும் பின்பற்றுவதை பயன்படுத்தி) ` ` உரை ` ` வெளியீட்டை எதிர்காண வெளியீட்டில் முன்னிருப்பாக பயன்படுத்த மாற்றப்படும்.
`` Qiskit.wrapper.load_qasm_string () `` மற்றும் `` qiskit.wrapper.load_qasm_file () `` செயல்பாடுகள் நீக்கப்பட்டன மற்றும் `` QuantumCircuit.from_qasm_str () `` மற்றும் `` QuantumCircuit.from_qasm_) அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
`` ஸ்டைல்`` குவார்க் அகராதியில் உள்ள `` சதி_ தடைகள்`` மற்றும் `` தலைகீழ்_பிட்ஸ்`` விசைகள் நீக்கப்பட்டன, அதற்கு பதிலாக `` qiskit.tools.visualization.circuit_drawer () `` குவார்க்ஸ் `` சதி_ தடைகள்` மற்றும் `` தலைகீழ்_பிட்கள் `` அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும்.
அவர் செயல்படுகிறார் `` சதி_நிலையம் () `` மற்றும் `` iplot_state () `` தேய்மானம் செய்யப்பட்டுள்ளது. அதற்கு பதிலாக `` சதி_நிலையம் _ * () `` மற்றும் `` iplot_state _ * () `` செயல்பாடுகளை தேவையான காட்சிப்படுத்தல் முறைக்கு அழைக்க வேண்டும்.
`` ஸ்கிப்_ டிரான்ஸ்பைலர்`` வாதம் `` தொகுத்தல் () `` மற்றும் `` செயல்படுத்து () `` ஆகியவற்றிலிருந்து நீக்கப்பட்டது. அதற்கு பதிலாக நீங்கள் `` பாஸ் மேனேஜர்`` ஐ நேரடியாகப் பயன்படுத்தலாம், `` பாஸ் மேனேஜர்`` ஐ வெற்று `` பாஸ் மேனேஜர்`` பொருளை பாஸ்மேனேஜர் () `உடன் அமைக்கவும்
வெவ்வேறு வெளியீட்டு வடிவங்களை வெளியிடுவதற்கான `` டிரான்ஸ்பைல்_டாக் () `` செயல்பாடு `` வடிவம்`` குவார்க் நீக்கப்பட்டது, அதற்கு பதிலாக நீங்கள் இயல்புநிலை வெளியீட்டை `` DAGCircuit`` பொருளை விரும்பிய வடிவத்திற்கு மாற்ற வேண்டும்.
அன்ரோலர்கள் நீக்கப்பட்டன, DAG க்கு DAG ஐ மட்டுமே முன்னோக்கி நகர்த்துவது ஆதரிக்கப்படும்.
இந்த விடுதலை போது சில பின்னணி மாற்றங்கள் செய்யப்பட்டுள்ளது என்று குறிப்பிடுக. பின்வரும் குறிப்புகள் இந்த மாற்றங்களை எப்படி ஏற்றுக்கொள்ளும் எப்படி தகவல்களை கொண்டுள்ளது.
முடிவு பொருள்களுக்கான மாற்றங்கள்¶
முடிவடைந்த பொருளின் மீண்டும் எழுதப் பொருளின் பகுதியாக மற்றும் ஒரு நிலையான இடைமுகம் முன்னேறும் ஒரு நிலையான இடைமுகம், நீங்கள் விளைவு பொருளில் சேமிக்கப்பட்ட தரவுகளை எப்படி அணுக வேண்டும். முதலில் ` ` gget_data () ` முறையை ` தரவு () ` ` தரவு () ` ` ` . ஒப்பந்தம் () ` ` என்று மாற்றியமைக்கப்பட்டுள்ளது. இது இப்போது எந்த பதவி-செயல்திறனை செய்யும் அதற்கு பதிலாக பின்னூட்டத்திலிருந்து முழு தகவல்கள் திரும்ப வருகின்றது. உதாரணமாக, முந்தைய பதிப்பில் நீங்கள் அழைக்க முடியும்:
result = execute(circuit, backend).result()
unitary = result.get_data()['unitary']
print(unitary)
அது:: போன்ற ஒற்றையாட்சி அணியைத் தரும்:
[[1+0j, 0+0.5j], [0-0.5j][-1+0j]]
ஆனால் இப்போது நீங்கள் அழைத்தால் (மறுபெயரிடப்பட்ட முறையுடன்):
result.data()['unitary']
இது போன்ற ஒன்றைத் தரும்:
[[[1, 0], [0, -0.5]], [[0, -0.5], [-1, 0]]]
இடுகை செயலாக்கப்பட்ட முடிவுகளை 0.7 வெளியீட்டிற்கு முந்தைய வடிவத்தில் பெற நீங்கள் முடிவு பொருளுக்குப் பதிலாக `` get_counts () ``, `` get_statevector () ``, மற்றும் `` get_unitary () `` முறைகளைப் பயன்படுத்த வேண்டும். `` get_data () ['எண்ணிக்கைகள்'] ``, `` get_data () ['ஸ்டேட்வெக்டர்'] ``, மற்றும் `` get_data () ['ஒற்றையாட்சி'] `` முறையே.
கூடுதலாக, `` len () `` க்கான ஆதரவு மற்றும் `` Result`` பொருளின் அட்டவணைப்படுத்தல் நீக்கப்பட்டன. அதற்கு பதிலாக நீங்கள் முடிவு பொருள்களில் இடுகையிடப்பட்ட செயலாக்க முறைகளின் வெளியீட்டைக் கையாள வேண்டும்.
மேலும், get_snapshot () `` மற்றும் ``get_snapshots () முறைகள் Result வகுப்பிலிருந்து நீக்கப்பட்டன. அதற்கு பதிலாக நீங்கள் Result.data()['snapshots'] ஐப் பயன்படுத்தி ஸ்னாப்ஷாட்களை அணுகலாம்.
காட்சிப்படுத்தல் மாற்றங்கள்¶
0.7 வெளியீட்டில் காட்சிப்படுத்தலில் செய்யப்பட்ட மிகப்பெரிய மாற்றம், திட்டத் தேவைகளிலிருந்து மேட்லோட்லிப் மற்றும் பிற காட்சிப்படுத்தல் சார்புகளை நீக்குவதாகும். Qiskit ட்டை நிறுவ தேவையான தேவைகள் மற்றும் உள்ளமைவை எளிதாக்குவதற்காக இது செய்யப்பட்டது. சர்க்யூட் டிராயருக்கான text, latex, and மற்றும் latex_source வெளியீட்டைத் தவிர வேறு எந்த காட்சிப்படுத்தல்களையும் (அனைத்து ஜூபிட்டர் மந்திரவாதிகள் உட்பட) பயன்படுத்த திட்டமிட்டால், நீங்கள் காட்சிப்படுத்தலை கைமுறையாக உறுதி செய்ய வேண்டும் சார்புகள் நிறுவப்பட்டுள்ளன. இதைச் செய்ய நீங்கள் கிஸ்கிட் டெர்ரா தொகுப்புக்கு விருப்பத் தேவைகளைப் பயன்படுத்தலாம்:
pip install qiskit-terra[visualization]
இது ஒருபுறம் இருக்க, உறுதிப்படுத்தலின் ஒரு பகுதியாக பல இடைமுகங்களில் மாற்றங்கள் செய்யப்பட்டுள்ளன, அவை ஏற்கனவே உள்ள குறியீட்டில் தாக்கத்தை ஏற்படுத்தக்கூடும். முதலாவது circuit_drawer() செயல்பாட்டில் உள்ள basis குவார்க் இனி ஏற்றுக்கொள்ளப்படாது. ஒரு சுற்று வரைபடத்தை வரைவதற்குப் பயன்படுத்தப்படும் அடிப்படை வாயில்களை சரிசெய்ய நீங்கள் circuit_drawer() ஐ நம்பியிருந்தால், circuit_drawer() என்று அழைப்பதற்கு இதை நீங்கள் செய்ய வேண்டும். உதாரணத்திற்கு:
from qiskit.tools import visualization
visualization.circuit_drawer(circuit, basis_gates='x,U,CX')
ஆக இருக்க வேண்டும்:
from qiskit import BasicAer
from qiskit import transpiler
from qiskit.tools import visualization
backend = BasicAer.backend('qasm_simulator')
draw_circ = transpiler.transpile(circuit, backend, basis_gates='x,U,CX')
visualization.circuit_drawer(draw_circ)
circuit_drawer() செயல்பாடு முன்னோக்கி நகர்வது காட்சிப்படுத்தல் தொகுதியில் சுற்று வரைபடத்திற்கான ஒரே இடைமுகமாக இருக்கும். 0.7 வெளியீட்டிற்கு முன்னர் வேறு பல செயல்பாடுகள் இருந்தன, அவை வெவ்வேறு வெளியீட்டு பின்தளத்தில் பயன்படுத்தப்பட்டன அல்லது சுற்றுகள் வரைவதற்கான வெளியீட்டை மாற்றின. இருப்பினும், மற்ற அனைத்து செயல்பாடுகளும் நீக்கப்பட்டன, மேலும் அந்த செயல்பாடு `` circuit_drawer()`` இல் விருப்பங்களாக ஒருங்கிணைக்கப்பட்டுள்ளது.
பிற காட்சிப்படுத்தல் செயல்பாடுகளுக்கு, plot_histogram() மற்றும் plot_state() மேம்படுத்தும்போது சரிபார்க்க சில மாற்றங்களும் உள்ளன. முதலாவதாக, இந்த செயல்பாடுகளின் வெளியீடு மாறிவிட்டது, முந்தைய வெளியீடுகளில் இவை வெளியீட்டு காட்சிப்படுத்தலை ஊடாடும். இருப்பினும் அதற்கு பதிலாக matplotlib.Figure பொருளைத் திருப்புவதற்கு மாற்றப்பட்டுள்ளது. இது காட்சிப்படுத்தலுடன் சேமிக்க அல்லது காண்பிப்பதற்கு முன்பு தொடர்புகொள்வதற்கான அதிக நெகிழ்வுத்தன்மையையும் விருப்பங்களையும் வழங்குகிறது. இந்த செயல்பாடுகள் எவ்வாறு நுகரப்படுகின்றன என்பதற்கான சரிசெய்தல் இதற்கு தேவைப்படும். எடுத்துக்காட்டாக, அழைக்கும் போது இந்த வெளியீட்டிற்கு முன்:
plot_histogram(counts)
plot_state(rho)
காட்சிப்படுத்தல் காண்பிக்க புதிய சாளரங்களை (மேட்லோட்லிப் பின்தளத்தில் பொறுத்து) திறக்கும். இருப்பினும் 0.7 இல் தொடங்கி இந்த நடத்தை பிரதிபலிக்க வெளியீட்டில் ``show() `` ஐ அழைக்க வேண்டும். உதாரணத்திற்கு:
plot_histogram(counts).show()
plot_state(rho).show()
அல்லது:
hist_fig = plot_histogram(counts)
state_fig = plot_state(rho)
hist_fig.show()
state_fig.show()
இது ஜூபிட்டருக்கு வெளியே இயங்கும் போது மட்டுமே என்பதை நினைவில் கொள்க. ஜூபிட்டர் சூழலுக்குள் எந்த மாற்றமும் தேவையில்லை, ஏனென்றால் `` Matplotlib.Figure`` பொருள்களை எவ்வாறு வழங்குவது என்பதை ஜூபிட்டர் குறிப்பேடுகள் பூர்வீகமாக புரிந்துகொள்கின்றன.
இருப்பினும், படம் பொருளைத் திருப்புவது வெளியீட்டைக் கையாள்வதற்கு கூடுதல் நெகிழ்வுத்தன்மையை வழங்குகிறது. எடுத்துக்காட்டாக, உருவத்தைக் காண்பிப்பதற்குப் பதிலாக, ``savefig() `` முறையை மேம்படுத்துவதன் மூலம் இப்போது அதை நேரடியாக ஒரு கோப்பில் சேமிக்க முடியும். உதாரணத்திற்கு:
hist_fig = plot_histogram(counts)
state_fig = plot_state(rho)
hist_fig.savefig('histogram.png')
state_fig.savefig('state_plot.png')
இந்த செயல்பாடுகளுடன் மாறியுள்ள மற்ற முக்கிய அம்சம் ஜூபிட்டரின் கீழ் இயங்கும் போது ஆகும். 0.6 வெளியீட்டில் plot_state() மற்றும் plot_histogram() ஜூபிட்டரின் கீழ் இயங்கும் போது இயல்புநிலை நடத்தை, காட்சிப்படுத்தல் வழங்குவதற்காக வெளிப்புறமாக ஹோஸ்ட் செய்யப்பட்ட ஜாவாஸ்கிரிப்ட் நூலகத்தை நெட்வொர்க்கில் அடைய முடிந்தால், ஊடாடும் ஜாவாஸ்கிரிப்ட் அடுக்குகளைப் பயன்படுத்துவதாகும். இல்லையென்றால் அது matplotlib பதிப்பைப் பயன்படுத்தும். இருப்பினும் 0.7 வெளியீட்டில் இது இனி இருக்காது, மேலும் ஊடாடும் அடுக்குகளுக்கான தனி செயல்பாடுகள், `` iplot_state () `` மற்றும் `` iplot_histogram () `` ஆகியவை அதற்கு பதிலாக பயன்படுத்தப்பட வேண்டும். `` plot_state() `` மற்றும் ``plot_histogram() `` எப்போதும் மேட்லோட்லிப் பதிப்புகளைப் பயன்படுத்துகின்றன.
கூடுதலாக, இந்த வெளியீட்டில் தொடங்கி `` plot_state() `` செயல்பாடு ஒரு குவாண்டம் நிலையைத் திட்டமிடும் ஒவ்வொரு முறைக்கும் தனிப்பட்ட முறைகளை அழைப்பதற்கு ஆதரவாக நீக்கப்படுகிறது. ``plot_state() `` செயல்பாடு 0.9 வெளியீடு வரை தொடர்ந்து செயல்படும், அது ஒவ்வொரு முறையும் பயன்படுத்தப்படும்போது ஒரு எச்சரிக்கையை வெளியிடும். தி
Qiskit Terra 0.6 |
Qiskit Terra 0.7+ |
|---|---|
plot_state(rho) |
plot_state_city(rho) |
plot_state(rho, method='city') |
plot_state_city(rho) |
plot_state(rho, method='city') |
plot_state_ paulivec (rho) |
plot_ state (rho, method = 'qsphere') |
plot_state_qsphere (rho) |
plot_ state (rho, method = 'bloch') |
plot_ bloch_multivector (rho) |
plot_ state (rho, method = 'hinton') |
plot_state_hinton (rho) |
ஊடாடும் JS சமமான `` iplot_state () `` க்கும் இது பொருந்தும். ஒவ்வொரு செயல்பாட்டிற்கும் ஒரு முன்னரே தயாரிக்கப்பட்ட i உடன், செயல்பாட்டு பெயர்கள் அனைத்தும் ஒரே மாதிரியானவை. எடுத்துக்காட்டாக, `` iplot_state (rho, method = 'paulivec') `` என்பது `` iplot_state_paulivec (rho) ``.
பின்தளத்தில் மாற்றங்கள்¶
0.7 வெளியீட்டில் செய்யப்பட்ட மேம்பாடுகளுடன், மேம்படுத்தும் போது மனதில் கொள்ள வேண்டிய பின்தளத்தில் தொடர்புடைய சில விஷயங்கள் உள்ளன. `` qiskit`` பெயர்வெளியில் வழங்குநர் நிகழ்வுகளை மறுசீரமைப்பதே மிகப்பெரிய மாற்றமாகும். Aer வழங்குநர் இயல்பாக நிறுவப்படவில்லை, மேலும் qiskit-aer தொகுப்பை நிறுவ வேண்டும். இந்த தொகுப்பு புதிய உயர் செயல்திறன் முழுமையாக இடம்பெற்ற சிமுலேட்டரைக் கொண்டுள்ளது. pip install qiskit வழியாக நீங்கள் நிறுவியிருந்தால், இதை ஏற்கனவே நிறுவியிருப்பீர்கள். பைதான் சிமுலேட்டர்கள் இப்போது `` qiskit.BasicAer`` இன் கீழ் கிடைக்கின்றன, மேலும் பழைய C ++ சிமுலேட்டர்கள் `` qiskit.LegacySimulators`` உடன் கிடைக்கின்றன. சி ++ சிமுலேட்டர்கள் கிடைக்காதபோது பைத்தான் அடிப்படையிலான சிமுலேட்டர்களுக்கான மறைமுகமான குறைவு இனி இருக்காது என்பதும் இதன் பொருள். நீங்கள் ஒரு உள்ளூர் சி ++ அடிப்படையிலான சிமுலேட்டர் பின்தளத்தில் கேட்டால், அதற்கு பதிலாக பைதான் சிமுலேட்டரைப் பயன்படுத்துவதற்குப் பதிலாக விதிவிலக்கு எழுப்பப்படும்.
கூடுதலாக, முன்னர் நீக்கப்பட்ட உயர் நிலை செயல்பாடுகள் register() மற்றும் `` available_backends() `` நீக்கப்பட்டன. மேலும், நீக்கப்பட்ட backend.parameters() மற்றும் `` backend.calibration()`` முறைகள் backend.properties() க்கு ஆதரவாக அகற்றப்பட்டுள்ளன. இந்த மாற்றங்கள் குறித்த கூடுதல் விவரங்களுக்கு நீங்கள் 0.6 வெளியீட்டு குறிப்புகள் பகுதியைப் பார்க்கலாம்:ref: backends.
Backend.jobs() மற்றும் backend.retrieve_jobs() அழைப்புகள் இனி அந்த வேலைகளின் முடிவுகளைத் தராது. அதற்கு பதிலாக நீங்கள் திரும்பிய வேலைவாய்ப்பு பொருள்களில் result() முறையை அழைக்க வேண்டும்.
கம்பைலர், டிரான்ஸ்பைலர் மற்றும் அன்ரோலர்களில் மாற்றங்கள்¶
கம்பைலர் இடைமுகங்களை உறுதிப்படுத்தும் முயற்சியின் ஒரு பகுதியாக, கம்பைலர் செயல்பாடுகளை மேம்படுத்தும் போது விழிப்புடன் இருக்க பல மாற்றங்கள் செய்யப்பட்டுள்ளன. முதலில் qiskit.transpiler.transpile () செயல்பாடு இப்போது ஒரு குவாண்டம் சர்க்யூட் பொருளை (அல்லது அவற்றின் பட்டியல்) எடுத்து ஒரு குவாண்டம் சர்க்யூட் பொருளை (அல்லது அவற்றின் பட்டியல்) தருகிறது என்பதைக் கவனத்தில் கொள்ள வேண்டும். DAG செயலாக்கம் இப்போது உள்நாட்டில் செய்யப்படுகிறது.
Qiskit.converters இல் உள்ள செயல்பாடுகளைப் பயன்படுத்தி இப்போது சுற்றுகள், DAG கள் மற்றும் Qobj க்கு இடையில் எளிதாக மாறலாம்.
ஏர் 0.1¶
புதிய அம்சங்கள்¶
Aer மூன்று சிமுலேட்டர் பின்தளத்தில் வழங்குகிறது:
`` QasmSimulator``: சோதனைகளை உருவகப்படுத்தி, அளவீட்டு விளைவுகளைத் தரவும்
StatevectorSimulator: அனைத்து பூஜ்ஜிய நிலையிலும் செயல்படும் ஒரு குவாண்டம் சுற்றுக்கான இறுதி ஸ்டேட்வெக்டரைத் திருப்பி விடுங்கள்UnitarySimulator: ஒரு குவாண்டம் சுற்றுக்கு யூனிட்டரி மேட்ரிக்ஸைத் திருப்பி விடுங்கள்
`` noise`` தொகுதி: `` QasmSimulator`` க்கான மேம்பட்ட சத்தம் மாடலிங் அம்சங்களைக் கொண்டுள்ளது
பிழைகள் முன்னிலையில் ஒரு கிஸ்கிட் குவாண்டம் சுற்று உருவகப்படுத்துவதற்கான `` NoiseModel``, `` QuantumError``, `` ReadoutError`` வகுப்புகள்
பின்வரும் வகையான குவாண்டம் பிழைகளுக்கான
QuantumErrorபொருள்களை உருவாக்குவதற்கான செயல்பாடுகள் உட்படerrorsதுணை தொகுதி: க்ராஸ், கலப்பு ஒற்றுமை, ஒத்திசைவான ஒற்றுமை, பவுலி, டிபோலரைசிங், வெப்ப தளர்வு, வீச்சு தணித்தல், கட்டம் குறைத்தல், ஒருங்கிணைந்த கட்டம் மற்றும் வீச்சு தணித்தல்ஒரு சாதனத்தின் `` BackendProperties`` அடிப்படையில் சத்தம் மாதிரியை தானாக உருவாக்குவதற்கான
deviceதுணை தொகுதி
utils தொகுதி:
Qiskit Terra API மூலம் இதுவரை ஆதரிக்கப்படாத சிறப்பு சிமுலேட்டர் வழிமுறைகளைச் செருகுவதற்காக `` qobj_utils`` ஒரு Qobj ஐ நேரடியாக மாற்றுவதற்கான செயல்பாடுகளை வழங்குகிறது.
Aqua 0.4¶
புதிய அம்சங்கள்¶
வழிமுறைகள் மற்றும் கூறுகளுக்கான நிரல் API கள் - ஒவ்வொரு கூறுகளும் இப்போது ஒற்றை (காலியாக இல்லாத) கட்டமைப்பாளர் அழைப்பு வழியாக உடனடி மற்றும் துவக்கப்படலாம்
அல்காரிதம் / பின்தளத்தில் டிகூப்பிளிங்கிற்கான
QuantumInstanceஏபிஐ -QuantumInstanceஒரு பின்தளத்தில் மற்றும் அதன் அமைப்புகளை இணைக்கிறதுபுதுப்பிக்கப்பட்ட ஆவணங்கள் மற்றும் புதிய நிரல் API களை விளக்கும் ஜூபிட்டர் குறிப்பேடுகள்
சாய்வு அடிப்படையிலான உகப்பாக்கிகளுக்கான வெளிப்படையான இணைப்படுத்தல்
பல-கட்டுப்படுத்தப்பட்ட- NOT (cnx) செயல்பாடு
சொருகக்கூடிய வழிமுறை கூறு `` RandomDistribution``
`` RandomDistribution`` இன் உறுதியான செயலாக்கங்கள்:
BernoulliDistribution,LogNormalDistribution,MultivariateDistribution,MultivariateNormalDistribution,MultivariateUniformDistribution,NormalDistribution,UniformDistribution, மற்றும் `` UnivariateDistribution``UncertaintyProblemஇன் உறுதியான செயலாக்கங்கள்:FixedIncomeExpectedValue,EuropeanCallExpectedValue, மற்றும்EuropeanCallDeltaAmplitude Estimation படிமம்
Qiskit உகப்பாக்கம்: தேர்வுமுறை சிக்கல்களுக்கான புதிய ஐசிங் மாதிரிகள் சரியான கவர், செட் பேக்கிங், வெர்டெக்ஸ் கவர், க்ளிக் மற்றும் வரைபட பகிர்வு
Qiskit AI:
`` FeatureMap`` சொருகக்கூடிய இடைமுகத்தை நீட்டிக்கும் புதிய அம்ச வரைபடங்கள்:
PauliExpansionமற்றும்PauliZExpansionபயிற்சி மாதிரி வரிசைப்படுத்தல் / தேசமயமாக்கல் வழிமுறை
Qiskit நிதி:
பெர்னௌலி சீரற்ற மாறிக்கான வீச்சு மதிப்பீடு: ஒற்றை குவிட் சிக்கலில் வீச்சு மதிப்பீட்டின் விளக்கம்
பெரும்பாலான தனிமங்களின் ஏற்றுமதி மற்றும் பல ஒழுங்குபடுத்துதல்
ஐரோப்பிய அழைப்பின் விருப்பம்: எதிர்பார்க்கப்பட்ட மதிப்பு மற்றும் டெல்டா (univariate distributions)
நிலையான வருமானம் அச்சுப்பொறி: எதிர்பார்க்கப்பட்ட மதிப்பு (multivariate distributions)
`` Operator`` வகுப்பில் உள்ள பவுலி சரம் டெர்ரா 0.7 உடன் சீரமைக்கப்பட்டுள்ளது. இப்போது ஒரு n-qubit pauli சரத்தின் வரிசை `` q_ {n-1}... q {0} `` இவ்வாறு, (டி) சீரியல் (
save_to_dictமற்றும் 'load_from_dict`)Pauliவகுப்பின் மாற்றங்களை ஏற்க 'Operator` வகுப்பும் மாற்றப்பட்டுள்ளது.
ஒத்திசைவு கொள்கைகள்¶
சொருகக்கூடிய வகையின்
HartreeFockகூறுInitialStateகிஸ்கிட் வேதியியலுக்கு நகர்த்தப்பட்டதுசொருகக்கூடிய வகையின்
UCCSDகூறுVariationalFormQiskit வேதியியலுக்கு நகர்த்தப்பட்டது
Qiskit 0. 6¶
டெரா 0. 6¶
சிறப்பம்சங்கள்¶
இந்த விடுதலை ஒரு புதிய, ஆரம்ப தகவல் தொடர்பு வடிவமைப்பு (Qobj) ஆகியவற்றின் மீதான ஒரு மறுபடியும், பயனர் அனுபவத்தை முழுவதுமாக மேம்படுத்துவதற்கு நீண்ட காலாவதியான அம்சங்களையும் கொண்டுள்ளது. The highlights, ஒப்பிடுகையில் 0.5 வெளியீடு:
உள்நுழைவுகளுக்கான முன்னேற்றங்கள் (Qobj specification (based on the Qobj specification) and extensibility (வளிமங்கள் புதிய பின்னணிகளுடன் விரிவாக்குவதற்கு வசதிகள்)
IBM Q பின்னணிகளுக்கான சான்றுகள் மற்றும் அணுகுமுறையை கையாளும் புதிய விருப்பங்கள், பயனர் சான்றுகளின் தானியங்கி ஏற்றத்தை ஆதரவளிக்கும்
காட்சிப்படுத்தல் பயன்பாடுகளின் மறுசீரமைப்பு: ஸ்டைலான ஊடாடும் காட்சிப்படுத்தல்கள் இப்போது ஜூபிட்டர் பயனர்களுக்குக் கிடைக்கின்றன, சர்க்யூட் டிராயருக்கான சுத்திகரிப்புகளுடன் (மேட்லோட்லிப் அடிப்படையிலான பதிப்பு உட்பட)
சர்க்யூட் டிரான்ஸ்பிளேஷனை மையமாகக் கொண்ட செயல்திறன் மேம்பாடுகள்: சர்க்யூட் தொகுப்பின் இணையானமயமாக்கல் மற்றும் ஏராளமான மேம்படுத்தல்கள் உள்ளிட்ட மிகவும் நெகிழ்வான மற்றும் மட்டு கட்டமைப்பிற்கான அடிப்படை அமைக்கப்பட்டுள்ளது
ஒத்திசைவு கொள்கைகள்¶
இந்த விடுதலை போது சில பின்னணி மாற்றங்கள் செய்யப்பட்டுள்ளது என்று குறிப்பிடுக. பின்வரும் குறிப்புகள் இந்த மாற்றங்களை எப்படி ஏற்றுக்கொள்ளும் எப்படி தகவல்களை கொண்டுள்ளது.
`` குவாண்டம் புரோகிராம்`` ஐ அகற்றுதல்¶
0.5 வெளியீட்டின் போது சுட்டிக்காட்டப்பட்டபடி, `` குவாண்டம் புரோகிராம்`` வகுப்பின் நீக்கம் இப்போது நிறைவடைந்துள்ளது, மேலும் அது தனிப்பட்ட கூறுகளுடன் பணிபுரிய ஆதரவாக இனி கிடைக்காது (: வகுப்பு: ~ qiskit.backends.basejob.BaseJob, : வகுப்பு: ~ qiskit._quantumcircuit.QuantumCircuit ,: வகுப்பு:` ~ qiskit._classicalregister.ClassicalRegister.
தயவுசெய்து சரிபார்க்கவும்: ref: 0.5 வெளியீட்டுக் குறிப்புகள் <quantum-program-0-5> மற்றும் மாற்றம் குறித்த விவரங்களுக்கான எடுத்துக்காட்டுகள்
from qiskit import QuantumCircuit, ClassicalRegister, QuantumRegister
from qiskit import Aer, execute
q = QuantumRegister(2)
c = ClassicalRegister(2)
qc = QuantumCircuit(q, c)
qc.h(q[0])
qc.cx(q[0], q[1])
qc.measure(q, c)
backend = get_backend('qasm_simulator')
job_sim = execute(qc, backend)
sim_result = job_sim.result()
print("simulation: ", sim_result)
print(sim_result.get_counts(qc))
IBM Q அங்கீகாரம் மற்றும் `` Qconfig.py``¶
IBM Q பின்னணிகளை பயன்படுத்தும்போது அங்கீகரிக்க பரிந்துரைகளின் நிர்வாகம் விரிவாக்கப்பட்டு, வலைப்பதிவுகளுக்கு பயன்படும் புதிய விருப்பங்கள் உள்ளன:
உங்கள் சான்றுகள் தட்டில் ஒரு முறை சேமிக்க, மற்றும் தானாகவே அவற்றை எதிர்காண அமர்வுகளாக ஏற்றவும். இது ஒரு ஒற்றை மின்சாரம் வழங்குகிறது:
from qiskit import IBMQ IBMQ.save_account('MY_API_TOKEN', 'MY_API_URL')
பின்னர், உங்கள் நற்சான்றிதழ்களை வட்டில் இருந்து தானாகவே ஏற்ற முடியும்: மெத்: ~ qiskit.backends.ibmq.ibmqprovider.IBMQ.load_accounts
from qiskit import IBMQ IBMQ.load_accounts()
அல்லது ஒரு அமர்வில் உள்ளவற்றை மட்டுமே பயன்படுத்த விரும்பினால் குறிப்பிட்ட கணக்குகளை மட்டுமே ஏற்ற முடியும்:
IBMQ.load_accounts(project='MY_PROJECT')
சூழல் மாறிகள் பயன்படுத்த. `` QE_TOKEN`` மற்றும் `` QE_URL`` ஆகியவை அமைக்கப்பட்டால், `` IBMQ.load_accounts () `` அழைப்பு தானாகவே அவர்களிடமிருந்து சான்றுகளை ஏற்றும்.
கூடுதலாக, நிரல் கோப்புறையில் `` Qconfig.py`` கோப்பை வைத்திருப்பதற்கும், சான்றுகளை வெளிப்படையாக அனுப்புவதற்கும் முந்தைய முறை இன்னும் ஆதரிக்கப்படுகிறது.
பின்னணிகளுடன் பணிசெய்யவும்¶
புதிய வழிமுறை டெர்ரா 0.6 இல் ஒரு பின்தளத்தில் பெறுவதற்கான பரிந்துரைக்கப்பட்ட வழியாக அறிமுகப்படுத்தப்பட்டுள்ளது, இது மிகவும் சக்திவாய்ந்த மற்றும் ஒருங்கிணைந்த வடிகட்டலை அனுமதிக்கிறது மற்றும் புதிய நற்சான்றிதழ் அமைப்புடன் ஒருங்கிணைக்கப்படுகிறது. முந்தைய உயர்மட்ட முறைகள்: மெத்: ~ qiskit.wrapper._wrapper.register ,: மெத்:` ~ qiskit.wrapper._wrapper.available_backends` மற்றும்: மெத்: ~ qiskit.wrapper._wrapper.get_backend இன்னும் ஆதரிக்கப்படுகின்றன , ஆனால் வரவிருக்கும் பதிப்புகளில் qiskit.IBMQ மற்றும்` qiskit.Aer` பொருள்களை நேரடியாகப் பயன்படுத்துவதற்கு ஆதரவாக நீக்கப்படும், இது மிகவும் சிக்கலான வடிகட்டலை அனுமதிக்கும்.
உதாரணமாக, பட்டியல் மற்றும் ஒரு உள்ளூர் பின்னணியை பயன்படுத்தவும்:
from qiskit import Aer
all_local_backends = Aer.backends(local=True) # returns a list of instances
qasm_simulator = Aer.backends('qasm_simulator')
மற்றும் தொலைதூர பின்னணிகளை உபயோகிக்கவும்:
from qiskit import IBMQ
IBMQ.enable_account('MY_API_TOKEN')
5_qubit_devices = IBMQ.backends(simulator=True, n_qubits=5)
ibmqx4 = IBMQ.get_backend('ibmqx4')
தயவு செய்து தயவு செய்து, உள்ளூர் உலாவிகளின் பெயர்களை எளிமைப்படுத்தப்பட்டுள்ளன. முந்தைய பெயர்களை இன்னும் பயன்படுத்த முடியும், ஆனால் புதிய, குறுகிய பெயர்களை பயன்படுத்த ஊக்குவித்துள்ளது:
Qiskit Terra 0.5 |
Qiskit Terra 0.6 |
|---|---|
' local_qasm_simulator ' |
' qasm_ simulator ' |
' local_statevector_simulator ' |
' statevector_simulator ' |
' local_unitary_simulator_ py ' |
' unitary_simulator ' |
பின்னணி மற்றும் பணி API மாற்றங்கள்¶
ஐபிஎம் கியூ பின்தளத்தில் சமர்ப்பிக்கப்பட்ட வேலைகள் மேம்பட்ட திறன்களைக் கொண்டுள்ளன. அவற்றை ரத்துசெய்து வரவுகளை நிரப்பவும் (`` job.cancel ()
), மற்றும் ஒரு குறிப்பிட்ட பின்தளத்தில் செயல்படுத்தப்பட்ட முந்தைய வேலைகளை வேலை ஐடி (backend.retrieve_job (job_id)) அல்லது தொகுப்பில் மீட்டெடுக்க முடியும். சமீபத்திய வேலைகள் (பின்தளத்தில்.ஜோப்ஸ் (வரம்பு) ``)ஒவ்வொரு தனிப்பட்ட வேலை நிலையையும் சரிபார்க்கும் பண்புகள் (`` வரிசை``, `` இயங்கும்``, `` சரிபார்க்கும்``, `` முடிந்தது`` மற்றும் `` ரத்துசெய்யப்பட்ட``) இனி இருக்காது. நீங்கள் வேலை நிலையை சரிபார்க்க விரும்பினால், `` job.status``:: க்கு எதிரான அடையாள ஒப்பீட்டைப் பயன்படுத்தவும்:
from qiskit.backends import JobStatus job = execute(circuit, backend) if job.status() is JobStatus.RUNNING: handle_job(job)
எளிமைப்படுத்தப்பட்ட API ஐ எவ்வாறு பயன்படுத்துவது என்பது பற்றிய கூடுதல் நுண்ணறிவைப் பெற தயவுசெய்து: வர்க்கத்தின் புதிய ஆவணங்களை அணுகவும்: ~ qiskit.backends.ibmq.ibmqjob.IBMQJob வகுப்பு.
பல உறுப்பினர்கள்: வர்க்கம்: ~ qiskit.backends.basebackend.BaseBackend மற்றும்: class:` ~ qiskit.backends.basejob.BaseJob` இனி பண்புகள் அல்ல, ஆனால் முறைகள், இதன் விளைவாக அவை செயல்படுத்தப்பட வேண்டும் செயல்பாடுகள்.
Qiskit Terra 0.5
Qiskit Terra 0.6
backend.name
backend.name()
backend.status
backend.status ()
backend.configuration
backend.configuration()
backend.calibration
backend.properties()
backend.parameters
backend.jobs() backend.retrieve_job(job_id)
job.status
job.status()
job.cancelled
job.queue_position()
job.running
job.cancel()
job.queued
job.done
சிறந்த ஜூபிட்டர் கருவிகள்¶
புதிய வெளியீட்டில் ஜூபிட்டர் நோட்புக்குகளைப் பயன்படுத்தும் போது பயனர் அனுபவத்தின் மேம்பாடுகள் உள்ளன.
முதலாவதாக, எண்ணிக்கைகள் ஹிஸ்டோகிராம்கள் மற்றும் குவாண்டம் நிலைகளின் புதிய ஊடாடும் காட்சிப்படுத்தல்கள் வழங்கப்படுகின்றன:meth: ~ qiskit.tools.visualization.plot_histogram மற்றும்:meth:` ~ qiskit.tools.visualization.plot_state`. சூழல் ஜூபிட்டராக இருக்கும்போது மற்றும் இணைய இணைப்பு இருக்கும்போது இந்த முறைகள் புதிய ஊடாடும் வகைக்கு இயல்புநிலையாக இருக்கும்.
இரண்டாவதாக, புதிய வெளியீடு உங்கள் குறியீட்டின் முன்னேற்றத்தைக் கண்காணிக்க ஜூபிட்டர் செல் மந்திரங்களை வழங்குகிறது. IBM Q பின்தளத்தில் சமர்ப்பிக்கப்பட்ட வேலைகளின் நிலையை கண்காணிக்க `` %% qiskit_job_status`` ஐப் பயன்படுத்தவும். தொகுத்தல் / செயல்படுத்தலின் முன்னேற்றத்தைக் கண்காணிக்க `` %% qiskit_progress_bar`` ஐப் பயன்படுத்தவும்.
Qiskit 0.5¶
Terra 0.5¶
சிறப்பம்சங்கள்¶
இந்த வெளியீடு பயனர் அனுபவத்திற்காகவும், பேட்டைக்குக் கீழாகவும் Qiskit டில் பல மேம்பாடுகளைக் கொண்டுவருகிறது. மாற்றங்களின் விரிவான விளக்கத்திற்கு முழு சேஞ்ச்லாக் ஐப் பார்க்கவும் - சிறப்பம்சங்கள்:
புதிய
statevector:mod: simulators <qiskit.backends.local> மற்றும் ஏற்கனவே உள்ளவற்றிற்கான அம்சம் மற்றும் செயல்திறன் மேம்பாடுகள் (குறிப்பாக சி ++ சிமுலேட்டருக்கு), மேலும் விரிவாக்கத்தில் கவனம் செலுத்தும் பின்தளத்தில் எவ்வாறு செயல்படுவது என்பதற்கான மறுசீரமைப்போடு மற்றும் நெகிழ்வுத்தன்மை (மாற்றுப்பெயர்கள் மற்றும் பின்தளத்தில் வழங்குநர்களைப் பயன்படுத்துதல்)ஒத்திசைவற்ற அம்சங்களை மறுசீரமைத்தல், ஒத்திசைவற்ற முறையில் வேலைகளை இயக்குவதற்கு ஒரு நட்பு இடைமுகத்தை வழங்குதல்:class: Job நிகழ்வுகள்
பயனர்களின் வசதிக்காகவும் (அநாமதேய பதிவேடுகளை அனுமதிப்பது போன்றவை) மற்றும் மேம்பட்ட செயல்பாட்டிற்காகவும் (சுற்றுகளின் மேம்பட்ட சதித்திட்டம் போன்றவை) டெர்ரா முழுவதும் ஏராளமான மேம்பாடுகள் மற்றும் திருத்தங்கள்
ஒத்திசைவு கொள்கைகள்¶
தற்போதைய வெளியீட்டின் விளைவாக இந்த வெளியீட்டின் போது பல பின்னோக்கி-பொருந்தாத மாற்றங்கள் அறிமுகப்படுத்தப்பட்டுள்ளன என்பதை நினைவில் கொள்க. இந்த அம்சங்களில் சில முழுமையாக நீக்கப்படுவதற்கு முன்னர் ஒரு காலகட்டத்தில் தொடர்ந்து ஆதரிக்கப்படும் என்றாலும், புதிய பதிப்புகளைத் தயாரிப்பதற்கும் புதிய செயல்பாட்டைப் பயன்படுத்துவதற்கும் உங்கள் நிரல்களைப் புதுப்பிக்க பரிந்துரைக்கப்படுகிறது.
QuantumProgram மாற்றம்¶
வகுப்பின் பல முறைகள்:class: ~ qiskit.QuantumProgram வகுப்பில் இருந்து நீக்கப்படும் பாதையில் உள்ளன:
பின்தளத்தில் மற்றும் API உடன் ** தொடர்புகொள்வதற்கான முறைகள் **:
ஐபிஎம் கியூ ஏபிஐக்கு இணைப்பைத் திறப்பதற்கும், பின்தளத்தில் பயன்படுத்துவதற்கும் பரிந்துரைக்கப்பட்ட வழி, ``QuantumProgram '` முறைகளுக்கு பதிலாக நேரடியாக உயர்மட்ட செயல்பாடுகளின் வழியாகும். குறிப்பாக,:func: qiskit.register முறை முந்தையவற்றுக்கு சமமானதை வழங்குகிறது:func:` qiskit.QuantumProgram.set_api` அழைப்பு. இதேபோன்ற ஒரு நரம்பில், ஒரு புதிய:func: qiskit.available_backends ,:func:` qiskit.get_backend` மற்றும் கிடைக்கக்கூடிய பின்தளத்தில் நேரடியாக வினவுவதற்கான தொடர்புடைய செயல்பாடுகள் உள்ளன. எடுத்துக்காட்டாக, பதிப்பு 0.4 க்கான பின்வரும் துணுக்கை
from qiskit import QuantumProgram quantum_program = QuantumProgram() quantum_program.set_api(token, url) backends = quantum_program.available_backends() print(quantum_program.get_backend_status('ibmqx4')
பதிப்பு 0. 5 க்கு பின்வரும் குறும்படத்துக்கு சமமானது:
from qiskit import register, available_backends, get_backend register(token, url) backends = available_backends() backend = get_backend('ibmqx4') print(backend.status)
** நிரல்களை தொகுத்தல் மற்றும் செயல்படுத்துவதற்கான ** முறைகள்:
உயர்மட்ட செயல்பாடுகள் இப்போது:func: qiskit.QuantumProgram.compile மற்றும் :func:` qiskit.QuantumProgram.execute` முறைகளுக்கும் சமமானவற்றை வழங்குகின்றன. எடுத்துக்காட்டாக, பதிப்பு 0.4 :: இலிருந்து பின்வரும் துணுக்கை:
quantum_program.execute(circuit, args, ...)
பதிப்பு 0. 5 க்கு பின்வரும் குறும்படத்துக்கு சமமானது:
from qiskit import execute execute(circuit, args, ...)
பொதுவாக, பதிப்பு 0.5 முதல் QuantumProgram ஐ நம்புவதற்கு பதிலாக தனிப்பட்ட பொருள்கள் மற்றும் வகுப்புகளை நேரடியாகப் பயன்படுத்த முயற்சிக்க ஊக்குவிக்கிறோம். எடுத்துக்காட்டாக, ஒரு:class: ~ qiskit.QuantumCircuit ஐ சேர்ப்பதன் மூலம் உடனடி மற்றும் கட்டமைக்க முடியும்:class:` ~ qiskit.QuantumRegister` ,:class: ~ qiskit.ClassicalRegister, மற்றும் வாயில்கள் நேரடியாக. குயிக்ஸ்டார்ட் பிரிவில் புதுப்பிப்பு உதாரணத்தை சரிபார்க்கவும் அல்லது பிரதான களஞ்சியத்தில் `` using_qiskit_core_level_0.py`` மற்றும் `` using_qiskit_core_level_1.py`` எடுத்துக்காட்டுகளைப் பார்க்கவும்.
பின்னணி பெயர் மாற்றம்¶
பின்தளத்தில் இன்னும் விரிவாக்கக்கூடிய கட்டமைப்பை வழங்குவதற்காக, அதற்கேற்ப சில வடிவமைப்பு மாற்றங்கள் செய்யப்பட்டுள்ளன:
** உள்ளார்ந்த உரையாடல் பெயர்கள் * *
அதே மாதிரியைப் பின்பற்றுவதற்காக உள்ளூர் சிமுலேட்டர்களின் பெயர்கள் ஒரே மாதிரியாக மாற்றப்பட்டுள்ளன:
PROVIDERNAME_TYPE_simulator_LANGUAGEORPROJECT- எடுத்துக்காட்டாக, முன்னர்local_qiskit_simulatorஎன்று பெயரிடப்பட்ட சி ++ சிமுலேட்டர் இப்போது `` local_qasm_simulator_cpp``. தற்போதைய சிமுலேட்டர்களின் கண்ணோட்டம்:QASMசிமுலேட்டர் ஒரு சோதனை போல இருக்க வேண்டும். நீங்கள் சில வினாடிகளில் ஒரு சுற்று பயன்படுத்துகிறீர்கள், மற்றும் அளவீட்டு முடிவுகளைக் கவனிக்கவும் - மேலும் `` result.get_counts () `` வழியாக எண்ணிக்கையின் வரைபடத்தைப் பெற பல காட்சிகளுக்கு நீங்கள் மீண்டும் செய்கிறீர்கள்.Statevectorசிமுலேட்டர் என்பது பூஜ்ஜிய நிலையை சுற்று வழியாக உருவாக்கிய பிறகு முழு ஸ்டேட்வெக்டரை (:math: 2 ^ n பெருக்கங்கள்) பெறுவதோடு, ``result.get_statevector()``வழியாகவும் பெறலாம்.Unitaryசிமுலேட்டர் என்பது சுற்றுக்கு நிகரான யூனிட் மேட்ரிக்ஸைப் பெறுவது, `` result.get_unitary () `` வழியாக திரும்பியது.கூடுதலாக, சுற்றுவட்டத்தின் பல்வேறு இடங்களில்
snapshot(slot)அறிவுறுத்தலைப் பயன்படுத்துவதன் மூலம் ஒரு சிமுலேட்டரிடமிருந்து இடைநிலை நிலைகளைப் பெறலாம். இது கொடுக்கப்பட்ட ஸ்லாட்டில் சிமுலேட்டரின் தற்போதைய நிலையைச் சேமிக்கும், பின்னர் `` result.get_snapshot (slot) `` வழியாக மீட்டெடுக்கலாம்.
** பின்தளத்தில் மாற்றுப்பெயர்கள் **:
SDK இப்போது ஒரு "alias" அமைப்பை வழங்குகிறது, இது உங்கள் கணினியில் கிடைத்தால், ஒரு குறிப்பிட்ட வகையின் மிகச் சிறந்த செயல்திறன் கொண்ட சிமுலேட்டரை தானாகவே பயன்படுத்த அனுமதிக்கிறது. எடுத்துக்காட்டாக, பின்வரும் துணுக்குடன்:
from qiskit import get_backend backend = get_backend('local_statevector_simulator')
பின்தளத்தில் சி ++ ஸ்டேட்வெக்டர் சிமுலேட்டராக இருந்தால், பைத்தான் ஸ்டேட்வெக்டர் சிமுலேட்டரில் இல்லாவிட்டால் மீண்டும் விழும்.
கூடுதலான பெயர் மற்றும் அளபுருக்கள்¶
SDK இன் பல செயல்பாடுகள் அதிக நேர்மையான மற்றும் பயனர் நம்பிக்கை செய்யப்பட்டுள்ளன:
** தானியங்கி சுற்றுச்சொல் மற்றும் பதிவு பெயர்கள் **
qiskit.ClassicalRegister,qiskit.QuantumRegisterandqiskit.QuantumCircuitcan now be instantiated without explicitly giving them a name - a new autonaming feature will automatically assign them an identifier:q = QuantumRegister(2)
அளவுருக்களின் வரிசை
QuantumRegister(size, name)மாற்றப்பட்டுள்ளது என்பதையும் நினைவில் கொள்க.** பெயர்கள் அல்லது நிகழ்வுகளை ஏற்றுக்கொள்ளும் முறைகள் **
தன்னியக்க மாற்றங்களுடன் இணைந்து, பல முறைகள்:func: qiskit.Result.get_data இப்போது பெயர்கள் மற்றும் நிகழ்வுகளை வசதிக்காக ஏற்றுக்கொள்கின்றன. எடுத்துக்காட்டாக, ஒற்றை சுற்று கொண்ட ஒரு வேலைக்கான முடிவுகளை மீட்டெடுக்கும்போது:
qc = QuantumCircuit(..., name='my_circuit') job = execute(qc, ...) result = job.result()
பின்வரும் அழைப்புகள் சமமானவை:
data = result.get_data('my_circuit') data = result.get_data(qc) data = result.get_data()